All of lore.kernel.org
 help / color / mirror / Atom feed
* [android-common:android12-5.10 1/1] include/linux/tracepoint.h:325:20: error: '__tracepoint_sched_stat_wait' undeclared here (not in a function); did you mean '__tracepoint_sched_swap_numa'?
@ 2021-06-01 22:36 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-06-01 22:36 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 27444 bytes --]

tree:   https://android.googlesource.com/kernel/common android12-5.10
head:   a6bb1af39d11ef0360cb34bb31b7224ca4db031f
commit: a6bb1af39d11ef0360cb34bb31b7224ca4db031f [1/1] ANDROID: vendor_hooks: Export the tracepoints sched_stat_iowait, sched_stat_blocked, sched_stat_wait to let modules probe them
config: arm-ezx_defconfig (attached as .config)
compiler: arm-linux-gnueabi-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 remote add android-common https://android.googlesource.com/kernel/common
        git fetch --no-tags android-common android12-5.10
        git checkout a6bb1af39d11ef0360cb34bb31b7224ca4db031f
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm 

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

All errors (new ones prefixed by >>):

   In file included from include/linux/linkage.h:7,
                    from arch/arm/include/asm/bug.h:5,
                    from include/linux/bug.h:5,
                    from include/linux/thread_info.h:12,
                    from include/asm-generic/current.h:5,
                    from ./arch/arm/include/generated/asm/current.h:1,
                    from include/linux/sched.h:12,
                    from include/linux/sched/numa_balancing.h:10,
                    from include/trace/events/sched.h:8,
                    from kernel/sched/core.c:10:
>> include/linux/tracepoint.h:325:20: error: '__tracepoint_sched_stat_wait' undeclared here (not in a function); did you mean '__tracepoint_sched_swap_numa'?
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |                    ^~~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:325:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:48:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      48 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_wait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/tracepoint.h:326:20: error: '__traceiter_sched_stat_wait' undeclared here (not in a function); did you mean '__tracepoint_sched_stat_wait'?
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |                    ^~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:326:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:48:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      48 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_wait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/static_call_types.h:9:33: error: '__SCK__tp_func_sched_stat_wait' undeclared here (not in a function); did you mean '__SCK__tp_func_sched_swap_numa'?
       9 | #define STATIC_CALL_KEY_PREFIX  __SCK__
         |                                 ^~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/static_call.h:291:38: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                      ^~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:60:22: note: in expansion of macro '___PASTE'
      60 | #define __PASTE(a,b) ___PASTE(a,b)
         |                      ^~~~~~~~
   include/linux/static_call_types.h:12:32: note: in expansion of macro '__PASTE'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                ^~~~~~~
   include/linux/static_call_types.h:12:40: note: in expansion of macro 'STATIC_CALL_KEY_PREFIX'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                        ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/static_call.h:291:56: note: in expansion of macro 'STATIC_CALL_KEY'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                                        ^~~~~~~~~~~~~~~
   include/linux/tracepoint.h:327:2: note: in expansion of macro 'EXPORT_STATIC_CALL_GPL'
     327 |  EXPORT_STATIC_CALL_GPL(tp_func_##name)
         |  ^~~~~~~~~~~~~~~~~~~~~~
   kernel/sched/core.c:48:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      48 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_wait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/tracepoint.h:325:20: error: '__tracepoint_sched_stat_iowait' undeclared here (not in a function); did you mean '__tracepoint_sched_stat_wait'?
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |                    ^~~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:325:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:49:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      49 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_iowait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/tracepoint.h:326:20: error: '__traceiter_sched_stat_iowait' undeclared here (not in a function); did you mean '__traceiter_sched_stat_wait'?
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |                    ^~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:326:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:49:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      49 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_iowait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/static_call_types.h:9:33: error: '__SCK__tp_func_sched_stat_iowait' undeclared here (not in a function); did you mean '__SCK__tp_func_sched_stat_wait'?
       9 | #define STATIC_CALL_KEY_PREFIX  __SCK__
         |                                 ^~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/static_call.h:291:38: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                      ^~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:60:22: note: in expansion of macro '___PASTE'
      60 | #define __PASTE(a,b) ___PASTE(a,b)
         |                      ^~~~~~~~
   include/linux/static_call_types.h:12:32: note: in expansion of macro '__PASTE'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                ^~~~~~~
   include/linux/static_call_types.h:12:40: note: in expansion of macro 'STATIC_CALL_KEY_PREFIX'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                        ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/static_call.h:291:56: note: in expansion of macro 'STATIC_CALL_KEY'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                                        ^~~~~~~~~~~~~~~
   include/linux/tracepoint.h:327:2: note: in expansion of macro 'EXPORT_STATIC_CALL_GPL'
     327 |  EXPORT_STATIC_CALL_GPL(tp_func_##name)
         |  ^~~~~~~~~~~~~~~~~~~~~~
   kernel/sched/core.c:49:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      49 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_iowait);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/tracepoint.h:325:20: error: '__tracepoint_sched_stat_blocked' undeclared here (not in a function); did you mean '__tracepoint_sched_stat_iowait'?
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |                    ^~~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:325:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     325 |  EXPORT_SYMBOL_GPL(__tracepoint_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:50:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      50 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_blocked);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/tracepoint.h:326:20: error: '__traceiter_sched_stat_blocked' undeclared here (not in a function); did you mean '__tracepoint_sched_stat_blocked'?
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |                    ^~~~~~~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/tracepoint.h:326:2: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     326 |  EXPORT_SYMBOL_GPL(__traceiter_##name);    \
         |  ^~~~~~~~~~~~~~~~~
   kernel/sched/core.c:50:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      50 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_blocked);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> include/linux/static_call_types.h:9:33: error: '__SCK__tp_func_sched_stat_blocked' undeclared here (not in a function); did you mean '__SCK__tp_func_sched_stat_iowait'?
       9 | #define STATIC_CALL_KEY_PREFIX  __SCK__
         |                                 ^~~~~~~
   include/linux/export.h:125:16: note: in definition of macro '___EXPORT_SYMBOL'
     125 |  extern typeof(sym) sym;       \
         |                ^~~
   include/linux/export.h:187:34: note: in expansion of macro '__EXPORT_SYMBOL'
     187 | #define _EXPORT_SYMBOL(sym, sec) __EXPORT_SYMBOL(sym, sec, "")
         |                                  ^~~~~~~~~~~~~~~
   include/linux/export.h:191:33: note: in expansion of macro '_EXPORT_SYMBOL'
     191 | #define EXPORT_SYMBOL_GPL(sym)  _EXPORT_SYMBOL(sym, "_gpl")
         |                                 ^~~~~~~~~~~~~~
   include/linux/static_call.h:291:38: note: in expansion of macro 'EXPORT_SYMBOL_GPL'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                      ^~~~~~~~~~~~~~~~~
   include/linux/compiler_types.h:60:22: note: in expansion of macro '___PASTE'
      60 | #define __PASTE(a,b) ___PASTE(a,b)
         |                      ^~~~~~~~
   include/linux/static_call_types.h:12:32: note: in expansion of macro '__PASTE'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                ^~~~~~~
   include/linux/static_call_types.h:12:40: note: in expansion of macro 'STATIC_CALL_KEY_PREFIX'
      12 | #define STATIC_CALL_KEY(name)  __PASTE(STATIC_CALL_KEY_PREFIX, name)
         |                                        ^~~~~~~~~~~~~~~~~~~~~~
   include/linux/static_call.h:291:56: note: in expansion of macro 'STATIC_CALL_KEY'
     291 | #define EXPORT_STATIC_CALL_GPL(name) EXPORT_SYMBOL_GPL(STATIC_CALL_KEY(name))
         |                                                        ^~~~~~~~~~~~~~~
   include/linux/tracepoint.h:327:2: note: in expansion of macro 'EXPORT_STATIC_CALL_GPL'
     327 |  EXPORT_STATIC_CALL_GPL(tp_func_##name)
         |  ^~~~~~~~~~~~~~~~~~~~~~
   kernel/sched/core.c:50:1: note: in expansion of macro 'EXPORT_TRACEPOINT_SYMBOL_GPL'
      50 | EXPORT_TRACEPOINT_SYMBOL_GPL(sched_stat_blocked);
         | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
   kernel/sched/core.c: In function 'ttwu_stat':
   kernel/sched/core.c:2600:13: warning: variable 'rq' set but not used [-Wunused-but-set-variable]
    2600 |  struct rq *rq;
         |             ^~


vim +325 include/linux/tracepoint.h

7ece55a4a3a04a Josh Triplett            2012-09-04  221  
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  222  /*
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  223   * Make sure the alignment of the structure in the __tracepoints section will
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  224   * not add unwanted padding between the beginning of the section and the
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  225   * structure. Force alignment to the same alignment as the section start.
3a630178fd5f30 Dave Hansen              2014-08-07  226   *
3a630178fd5f30 Dave Hansen              2014-08-07  227   * When lockdep is enabled, we make sure to always do the RCU portions of
a15920bea0428c Mathieu Desnoyers        2015-11-02  228   * the tracepoint code, regardless of whether tracing is on. However,
a15920bea0428c Mathieu Desnoyers        2015-11-02  229   * don't check if the condition is false, due to interaction with idle
a15920bea0428c Mathieu Desnoyers        2015-11-02  230   * instrumentation. This lets us find RCU issues triggered with tracepoints
a15920bea0428c Mathieu Desnoyers        2015-11-02  231   * even when this tracepoint is off. This code has no purpose other than
a15920bea0428c Mathieu Desnoyers        2015-11-02  232   * poking RCU a bit.
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  233   */
287050d3902644 Steven Rostedt           2010-12-02  234  #define __DECLARE_TRACE(name, proto, args, cond, data_proto, data_args) \
de394e7568ce2c peterz(a)infradead.org     2020-09-08  235  	extern int __traceiter_##name(data_proto);			\
de394e7568ce2c peterz(a)infradead.org     2020-09-08  236  	DECLARE_STATIC_CALL(tp_func_##name, __traceiter_##name);	\
7e066fb870fcd1 Mathieu Desnoyers        2008-11-14  237  	extern struct tracepoint __tracepoint_##name;			\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  238  	static inline void trace_##name(proto)				\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  239  	{								\
c5905afb0ee655 Ingo Molnar              2012-02-24  240  		if (static_key_false(&__tracepoint_##name.key))		\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  241) 			__DO_TRACE(name,				\
38516ab59fbc5b Steven Rostedt           2010-04-20  242  				TP_PROTO(data_proto),			\
287050d3902644 Steven Rostedt           2010-12-02  243  				TP_ARGS(data_args),			\
d54b6eeb553c89 Steven Rostedt (VMware   2017-04-07  244) 				TP_CONDITION(cond), 0);			\
a05d59a5673339 Steven Rostedt (Red Hat  2015-02-06  245) 		if (IS_ENABLED(CONFIG_LOCKDEP) && (cond)) {		\
3a630178fd5f30 Dave Hansen              2014-08-07  246  			rcu_read_lock_sched_notrace();			\
3a630178fd5f30 Dave Hansen              2014-08-07  247  			rcu_dereference_sched(__tracepoint_##name.funcs);\
3a630178fd5f30 Dave Hansen              2014-08-07  248  			rcu_read_unlock_sched_notrace();		\
3a630178fd5f30 Dave Hansen              2014-08-07  249  		}							\
2fbb90db1b8fcc Steven Rostedt           2012-02-07  250  	}								\
7ece55a4a3a04a Josh Triplett            2012-09-04  251  	__DECLARE_TRACE_RCU(name, PARAMS(proto), PARAMS(args),		\
7ece55a4a3a04a Josh Triplett            2012-09-04  252  		PARAMS(cond), PARAMS(data_proto), PARAMS(data_args))	\
38516ab59fbc5b Steven Rostedt           2010-04-20  253  	static inline int						\
38516ab59fbc5b Steven Rostedt           2010-04-20  254  	register_trace_##name(void (*probe)(data_proto), void *data)	\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  255  	{								\
de7b2973903c6c Mathieu Desnoyers        2014-04-08  256  		return tracepoint_probe_register(&__tracepoint_##name,	\
de7b2973903c6c Mathieu Desnoyers        2014-04-08  257  						(void *)probe, data);	\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  258  	}								\
38516ab59fbc5b Steven Rostedt           2010-04-20  259  	static inline int						\
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  260) 	register_trace_prio_##name(void (*probe)(data_proto), void *data,\
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  261) 				   int prio)				\
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  262) 	{								\
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  263) 		return tracepoint_probe_register_prio(&__tracepoint_##name, \
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  264) 					      (void *)probe, data, prio); \
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  265) 	}								\
7904b5c4988e18 Steven Rostedt (Red Hat  2015-09-22  266) 	static inline int						\
38516ab59fbc5b Steven Rostedt           2010-04-20  267  	unregister_trace_##name(void (*probe)(data_proto), void *data)	\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  268  	{								\
de7b2973903c6c Mathieu Desnoyers        2014-04-08  269  		return tracepoint_probe_unregister(&__tracepoint_##name,\
de7b2973903c6c Mathieu Desnoyers        2014-04-08  270  						(void *)probe, data);	\
53da59aa6dd881 Mathieu Desnoyers        2010-04-30  271  	}								\
38516ab59fbc5b Steven Rostedt           2010-04-20  272  	static inline void						\
38516ab59fbc5b Steven Rostedt           2010-04-20  273  	check_trace_callback_type_##name(void (*cb)(data_proto))	\
53da59aa6dd881 Mathieu Desnoyers        2010-04-30  274  	{								\
7c65bbc7dcface Steven Rostedt (Red Hat  2014-05-06  275) 	}								\
7c65bbc7dcface Steven Rostedt (Red Hat  2014-05-06  276) 	static inline bool						\
7c65bbc7dcface Steven Rostedt (Red Hat  2014-05-06  277) 	trace_##name##_enabled(void)					\
7c65bbc7dcface Steven Rostedt (Red Hat  2014-05-06  278) 	{								\
7c65bbc7dcface Steven Rostedt (Red Hat  2014-05-06  279) 		return static_key_false(&__tracepoint_##name.key);	\
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  280  	}
97e1c18e8d17bd Mathieu Desnoyers        2008-07-18  281  
654986462939cd Mathieu Desnoyers        2011-01-26  282  /*
654986462939cd Mathieu Desnoyers        2011-01-26  283   * We have no guarantee that gcc and the linker won't up-align the tracepoint
654986462939cd Mathieu Desnoyers        2011-01-26  284   * structures, so we create an array of pointers that will be used for iteration
654986462939cd Mathieu Desnoyers        2011-01-26  285   * on the tracepoints.
654986462939cd Mathieu Desnoyers        2011-01-26  286   */
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  287) #define DEFINE_TRACE_FN(_name, _reg, _unreg, proto, args)		\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  288) 	static const char __tpstrtab_##_name[]				\
33def8498fdde1 Joe Perches              2020-10-21  289  	__section("__tracepoints_strings") = #_name;			\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  290) 	extern struct static_call_key STATIC_CALL_KEY(tp_func_##_name);	\
de394e7568ce2c peterz(a)infradead.org     2020-09-08  291  	int __traceiter_##_name(void *__data, proto);			\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  292) 	struct tracepoint __tracepoint_##_name	__used			\
33def8498fdde1 Joe Perches              2020-10-21  293  	__section("__tracepoints") = {					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  294) 		.name = __tpstrtab_##_name,				\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  295) 		.key = STATIC_KEY_INIT_FALSE,				\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  296) 		.static_call_key = &STATIC_CALL_KEY(tp_func_##_name),	\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  297) 		.static_call_tramp = STATIC_CALL_TRAMP_ADDR(tp_func_##_name), \
de394e7568ce2c peterz(a)infradead.org     2020-09-08  298  		.iterator = &__traceiter_##_name,			\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  299) 		.regfunc = _reg,					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  300) 		.unregfunc = _unreg,					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  301) 		.funcs = NULL };					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  302) 	__TRACEPOINT_ENTRY(_name);					\
de394e7568ce2c peterz(a)infradead.org     2020-09-08  303  	int __traceiter_##_name(void *__data, proto)			\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  304) 	{								\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  305) 		struct tracepoint_func *it_func_ptr;			\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  306) 		void *it_func;						\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  307) 									\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  308) 		it_func_ptr =						\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  309) 			rcu_dereference_raw((&__tracepoint_##_name)->funcs); \
059e68da31b024 Alexey Kardashevskiy     2021-02-02  310  		if (it_func_ptr) {					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  311) 			do {						\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  312) 				it_func = (it_func_ptr)->func;		\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  313) 				__data = (it_func_ptr)->data;		\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  314) 				((void(*)(void *, proto))(it_func))(__data, args); \
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  315) 			} while ((++it_func_ptr)->func);		\
059e68da31b024 Alexey Kardashevskiy     2021-02-02  316  		}							\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  317) 		return 0;						\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  318) 	}								\
de394e7568ce2c peterz(a)infradead.org     2020-09-08  319  	DEFINE_STATIC_CALL(tp_func_##_name, __traceiter_##_name);
97419875865859 Josh Stone               2009-08-24  320  
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  321) #define DEFINE_TRACE(name, proto, args)		\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  322) 	DEFINE_TRACE_FN(name, NULL, NULL, PARAMS(proto), PARAMS(args));
7e066fb870fcd1 Mathieu Desnoyers        2008-11-14  323  
7e066fb870fcd1 Mathieu Desnoyers        2008-11-14  324  #define EXPORT_TRACEPOINT_SYMBOL_GPL(name)				\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18 @325) 	EXPORT_SYMBOL_GPL(__tracepoint_##name);				\
de394e7568ce2c peterz(a)infradead.org     2020-09-08 @326  	EXPORT_SYMBOL_GPL(__traceiter_##name);				\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  327) 	EXPORT_STATIC_CALL_GPL(tp_func_##name)
7e066fb870fcd1 Mathieu Desnoyers        2008-11-14  328  #define EXPORT_TRACEPOINT_SYMBOL(name)					\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  329) 	EXPORT_SYMBOL(__tracepoint_##name);				\
de394e7568ce2c peterz(a)infradead.org     2020-09-08  330  	EXPORT_SYMBOL(__traceiter_##name);				\
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  331) 	EXPORT_STATIC_CALL(tp_func_##name)
d25e37d89dd2f4 Steven Rostedt (VMware   2020-08-18  332) 
7e066fb870fcd1 Mathieu Desnoyers        2008-11-14  333  

:::::: The code at line 325 was first introduced by commit
:::::: d25e37d89dd2f41d7acae0429039d2f0ae8b4a07 tracepoint: Optimize using static_call()

:::::: TO: Steven Rostedt (VMware) <rostedt@goodmis.org>
:::::: CC: Ingo Molnar <mingo@kernel.org>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 24702 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-06-01 22:36 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-01 22:36 [android-common:android12-5.10 1/1] include/linux/tracepoint.h:325:20: error: '__tracepoint_sched_stat_wait' undeclared here (not in a function); did you mean '__tracepoint_sched_swap_numa'? kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.