tree:
https://android.googlesource.com/kernel/common android12-5.10
head: 0497b9601bee1f96c3ef3c169090e1ac4118f15d
commit: 39fedc3a58f46a8aa8b35e451db9cea67126858a [6061/10672] ANDROID: Fix compilation
error when CPU_FREQ is disabled
config: x86_64-randconfig-s021-20210720 (attached as .config)
compiler: gcc-10 (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.3-341-g8af24329-dirty
git remote add android-common
https://android.googlesource.com/kernel/common
git fetch --no-tags android-common android12-5.10
git checkout 39fedc3a58f46a8aa8b35e451db9cea67126858a
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
include/trace/hooks/sched.h:147:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:151:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:151:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:151:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:155:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:155:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:155:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:159:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:159:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:159:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:163:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:163:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:163:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:167:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:167:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:167:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:171:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:171:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:171:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:175:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:175:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:175:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:179:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:179:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:179:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:183:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:183:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:183:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:187:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:187:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:187:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:192:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:192:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:192:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:196:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:196:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:196:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:200:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:200:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:200:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:204:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:204:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:204:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:209:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:209:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:209:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:213:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:213:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:213:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:217:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:217:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:217:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:221:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:221:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:221:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:225:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:225:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:225:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:229:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:229:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:229:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:245:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:245:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:245:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:249:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:249:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:249:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:254:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:254:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:254:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:259:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:259:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:259:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/sched.h:273:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/sched.h:273:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/sched.h:273:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
drivers/android/vendor_hooks.c: note: in included file (through
include/trace/define_trace.h, include/trace/hooks/mm.h):
include/trace/hooks/mm.h:16:1: sparse: sparse: incorrect type in assignment (different
address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got struct
tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/mm.h:16:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/mm.h:16:1: sparse: got struct tracepoint_func [noderef] __rcu
*funcs
include/trace/hooks/mm.h:19:1: sparse: sparse: incorrect type in assignment (different
address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got struct
tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/mm.h:19:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/mm.h:19:1: sparse: got struct tracepoint_func [noderef] __rcu
*funcs
include/trace/hooks/mm.h:22:1: sparse: sparse: incorrect type in assignment (different
address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got struct
tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/mm.h:22:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/mm.h:22:1: sparse: got struct tracepoint_func [noderef] __rcu
*funcs
drivers/android/vendor_hooks.c: note: in included file (through
include/trace/define_trace.h, include/trace/hooks/preemptirq.h):
include/trace/hooks/preemptirq.h:14:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/preemptirq.h:14:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/preemptirq.h:14:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/preemptirq.h:18:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/preemptirq.h:18:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/preemptirq.h:18:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/preemptirq.h:22:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/preemptirq.h:22:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/preemptirq.h:22:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/preemptirq.h:26:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/preemptirq.h:26:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/preemptirq.h:26:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
drivers/android/vendor_hooks.c: note: in included file (through
include/trace/define_trace.h, include/trace/hooks/bug.h):
> include/trace/hooks/bug.h:14:1: sparse: sparse: incorrect type in
assignment (different address spaces) @@ expected struct tracepoint_func *it_func_ptr
@@ got struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/bug.h:14:1: sparse: expected struct tracepoint_func *it_func_ptr
include/trace/hooks/bug.h:14:1: sparse: got struct tracepoint_func [noderef] __rcu
*funcs
drivers/android/vendor_hooks.c: note: in included file (through
include/trace/define_trace.h, include/trace/hooks/fault.h):
> include/trace/hooks/fault.h:15:1: sparse: sparse: incorrect type
in assignment (different address spaces) @@ expected struct tracepoint_func
*it_func_ptr @@ got struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/fault.h:15:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/fault.h:15:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/fault.h:19:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/fault.h:19:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/fault.h:19:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/fault.h:23:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/fault.h:23:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/fault.h:23:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
include/trace/hooks/fault.h:27:1: sparse: sparse: incorrect type in assignment
(different address spaces) @@ expected struct tracepoint_func *it_func_ptr @@ got
struct tracepoint_func [noderef] __rcu *funcs @@
include/trace/hooks/fault.h:27:1: sparse: expected struct tracepoint_func
*it_func_ptr
include/trace/hooks/fault.h:27:1: sparse: got struct tracepoint_func [noderef]
__rcu *funcs
vim +14 include/trace/hooks/bug.h
505e967879727f Sangmoon Kim 2021-01-19 5
505e967879727f Sangmoon Kim 2021-01-19 6 #if !defined(_TRACE_HOOK_BUG_H) ||
defined(TRACE_HEADER_MULTI_READ)
505e967879727f Sangmoon Kim 2021-01-19 7 #define _TRACE_HOOK_BUG_H
505e967879727f Sangmoon Kim 2021-01-19 8 #include <linux/tracepoint.h>
505e967879727f Sangmoon Kim 2021-01-19 9 #include <trace/hooks/vendor_hooks.h>
505e967879727f Sangmoon Kim 2021-01-19 10 /*
505e967879727f Sangmoon Kim 2021-01-19 11 * Following tracepoints are not exported in
tracefs and provide a
505e967879727f Sangmoon Kim 2021-01-19 12 * mechanism for vendor modules to hook and
extend functionality
505e967879727f Sangmoon Kim 2021-01-19 13 */
505e967879727f Sangmoon Kim 2021-01-19 @14
DECLARE_RESTRICTED_HOOK(android_rvh_report_bug,
505e967879727f Sangmoon Kim 2021-01-19 15 TP_PROTO(const char *file, unsigned int line,
unsigned long bugaddr),
505e967879727f Sangmoon Kim 2021-01-19 16 TP_ARGS(file, line, bugaddr), 1);
505e967879727f Sangmoon Kim 2021-01-19 17
:::::: The code at line 14 was first introduced by commit
:::::: 505e967879727f5c83185c633c7824e900fb2774 ANDROID: bug: add vendor hook for bug
trap
:::::: TO: Sangmoon Kim <sangmoon.kim(a)samsung.com>
:::::: CC: Greg Kroah-Hartman <gregkh(a)google.com>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org