[rostedt-trace:ftrace/core 1/2] include/linux/rcupdate.h:404:11: error: dereferencing pointer to incomplete type 'struct trace_pid_list'

From: kernel test robot
Date: Tue Sep 28 2021 - 20:36:39 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git ftrace/core
head: c8d01c02b46e599b057d7d24d1342ae9fcf828c2
commit: eff05923d317af757bb800c1dabc25388abda36b [1/2] tracing: Place trace_pid_list logic into abstract functions
config: x86_64-randconfig-a014-20210928 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git/commit/?id=eff05923d317af757bb800c1dabc25388abda36b
git remote add rostedt-trace https://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace.git
git fetch --no-tags rostedt-trace ftrace/core
git checkout eff05923d317af757bb800c1dabc25388abda36b
# save the attached .config to linux build tree
mkdir build_dir
make W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

In file included from include/linux/workqueue.h:16,
from kernel/trace/trace_events.c:14:
kernel/trace/trace_events.c: In function 'trace_event_ignore_this_pid':
>> include/linux/rcupdate.h:404:11: error: dereferencing pointer to incomplete type 'struct trace_pid_list'
404 | ((typeof(*p) __force __kernel *)(________p1)); \
kernel/trace/trace_events.c:450:13: note: in expansion of macro 'rcu_dereference_raw'
450 | pid_list = rcu_dereference_raw(tr->filtered_pids);
| ^~~~~~~~~~~~~~~~~~~


vim +404 include/linux/rcupdate.h

76c8eaafe4f061f Paul E. McKenney 2021-04-21 379
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 380 #define __rcu_access_pointer(p, space) \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 381 ({ \
7d0ae8086b82831 Paul E. McKenney 2015-03-03 382 typeof(*p) *_________p1 = (typeof(*p) *__force)READ_ONCE(p); \
423a86a610cad12 Joel Fernandes (Google 2018-12-12 383) rcu_check_sparse(p, space); \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 384 ((typeof(*p) __force __kernel *)(_________p1)); \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 385 })
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 386 #define __rcu_dereference_check(p, c, space) \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 387 ({ \
ac59853c06993a4 Pranith Kumar 2014-11-13 388 /* Dependency order vs. p above. */ \
506458efaf153c1 Will Deacon 2017-10-24 389 typeof(*p) *________p1 = (typeof(*p) *__force)READ_ONCE(p); \
f78f5b90c4ffa55 Paul E. McKenney 2015-06-18 390 RCU_LOCKDEP_WARN(!(c), "suspicious rcu_dereference_check() usage"); \
423a86a610cad12 Joel Fernandes (Google 2018-12-12 391) rcu_check_sparse(p, space); \
ac59853c06993a4 Pranith Kumar 2014-11-13 392 ((typeof(*p) __force __kernel *)(________p1)); \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 393 })
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 394 #define __rcu_dereference_protected(p, c, space) \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 395 ({ \
f78f5b90c4ffa55 Paul E. McKenney 2015-06-18 396 RCU_LOCKDEP_WARN(!(c), "suspicious rcu_dereference_protected() usage"); \
423a86a610cad12 Joel Fernandes (Google 2018-12-12 397) rcu_check_sparse(p, space); \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 398 ((typeof(*p) __force __kernel *)(p)); \
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 399 })
995f1405610bd84 Paul E. McKenney 2016-07-01 400 #define rcu_dereference_raw(p) \
995f1405610bd84 Paul E. McKenney 2016-07-01 401 ({ \
995f1405610bd84 Paul E. McKenney 2016-07-01 402 /* Dependency order vs. p above. */ \
506458efaf153c1 Will Deacon 2017-10-24 403 typeof(p) ________p1 = READ_ONCE(p); \
995f1405610bd84 Paul E. McKenney 2016-07-01 @404 ((typeof(*p) __force __kernel *)(________p1)); \
995f1405610bd84 Paul E. McKenney 2016-07-01 405 })
ca5ecddfa8fcbd9 Paul E. McKenney 2010-04-28 406

:::::: The code at line 404 was first introduced by commit
:::::: 995f1405610bd8446c5be37d2ffc031a7729e406 rcu: Suppress sparse warnings for rcu_dereference_raw()

:::::: TO: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx>
:::::: CC: David Howells <dhowells@xxxxxxxxxx>

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@xxxxxxxxxxxx

Attachment: .config.gz
Description: application/gzip