tree:
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
char-misc-testing
head: c248e6b8a8fe4cfe382f49324d776a04cc89c061
commit: 10f6fcd31b177c9b8efca992ec47ec30cf9ec9ed [43/50] binder: add transaction latency
tracer
config: arc-allyesconfig (attached as .config)
compiler: arceb-elf-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 10f6fcd31b177c9b8efca992ec47ec30cf9ec9ed
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arc
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
> drivers/android/binder_latency_tracer.c:25:6: warning: no
previous prototype for 'probe_binder_txn_latency_free' [-Wmissing-prototypes]
25 | void probe_binder_txn_latency_free(void *ignore, struct
binder_transaction *t,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from include/linux/rtc.h:38,
from drivers/android/binder_internal.h:19,
from drivers/android/binder_latency_tracer.c:8:
drivers/android/binder_internal.h:125:23: warning:
'binder_transaction_log_fops' defined but not used [-Wunused-const-variable=]
125 | DEFINE_SHOW_ATTRIBUTE(binder_transaction_log);
| ^~~~~~~~~~~~~~~~~~~~~~
include/linux/seq_file.h:173:37: note: in definition of macro
'DEFINE_SHOW_ATTRIBUTE'
173 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
drivers/android/binder_internal.h:122:23: warning: 'binder_transactions_fops'
defined but not used [-Wunused-const-variable=]
122 | DEFINE_SHOW_ATTRIBUTE(binder_transactions);
| ^~~~~~~~~~~~~~~~~~~
include/linux/seq_file.h:173:37: note: in definition of macro
'DEFINE_SHOW_ATTRIBUTE'
173 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
drivers/android/binder_internal.h:119:23: warning: 'binder_state_fops' defined
but not used [-Wunused-const-variable=]
119 | DEFINE_SHOW_ATTRIBUTE(binder_state);
| ^~~~~~~~~~~~
include/linux/seq_file.h:173:37: note: in definition of macro
'DEFINE_SHOW_ATTRIBUTE'
173 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
drivers/android/binder_internal.h:116:23: warning: 'binder_stats_fops' defined
but not used [-Wunused-const-variable=]
116 | DEFINE_SHOW_ATTRIBUTE(binder_stats);
| ^~~~~~~~~~~~
include/linux/seq_file.h:173:37: note: in definition of macro
'DEFINE_SHOW_ATTRIBUTE'
173 | static const struct file_operations __name ## _fops = { \
| ^~~~~~
#
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git/comm...
git remote add char-misc
https://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc.git
git fetch --no-tags char-misc char-misc-testing
git checkout 10f6fcd31b177c9b8efca992ec47ec30cf9ec9ed
vim +/probe_binder_txn_latency_free +25 drivers/android/binder_latency_tracer.c
10
11 /**
12 * The reason setting the binder_txn_latency_threshold to 2 sec
13 * is that most of timeout abort is greater or equal to 2 sec.
14 * Making it configurable to let all users determine which
15 * threshold is more suitable.
16 */
17 static uint32_t binder_txn_latency_threshold = 2;
18 module_param_named(threshold, binder_txn_latency_threshold,
19 uint, 0644);
20
21 /*
22 * probe_binder_txn_latency_free - Output info of a delay transaction
23 * @t: pointer to the over-time transaction
24 */
25 void probe_binder_txn_latency_free(void *ignore, struct
binder_transaction *t,
26 int from_proc, int from_thread,
27 int to_proc, int to_thread)
28 {
29 struct rtc_time tm;
30 struct timespec64 *startime;
31 struct timespec64 cur, sub_t;
32
33 ktime_get_ts64(&cur);
34 startime = &t->ts;
35 sub_t = timespec64_sub(cur, *startime);
36
37 /* if transaction time is over than binder_txn_latency_threshold (sec),
38 * show timeout warning log.
39 */
40 if (sub_t.tv_sec < binder_txn_latency_threshold)
41 return;
42
43 rtc_time64_to_tm(t->real_ts.tv_sec, &tm);
44
45 pr_info_ratelimited("%d: from %d:%d to %d:%d",
46 t->debug_id, from_proc, from_thread,
47 to_proc, to_thread);
48
49 pr_info_ratelimited(" total %u.%03ld s code %u start %lu.%03ld android
%d-%02d-%02d %02d:%02d:%02d.%03lu\n",
50 (unsigned int)sub_t.tv_sec,
51 (sub_t.tv_nsec / NSEC_PER_MSEC),
52 t->code,
53 (unsigned long)startime->tv_sec,
54 (startime->tv_nsec / NSEC_PER_MSEC),
55 (tm.tm_year + 1900), (tm.tm_mon + 1), tm.tm_mday,
56 tm.tm_hour, tm.tm_min, tm.tm_sec,
57 (unsigned long)(t->real_ts.tv_nsec / NSEC_PER_MSEC));
58 }
59
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org