Messages in this thread | | | Date | Fri, 31 Mar 2023 13:58:38 +0200 | From | Frederic Weisbecker <> | Subject | Re: [PATCH rcu 01/20] rcu-tasks: Fix warning for unused tasks_rcu_exit_srcu |
| |
On Thu, Mar 30, 2023 at 03:47:07PM -0700, Paul E. McKenney wrote: > The tasks_rcu_exit_srcu variable is used only by kernels built > with CONFIG_TASKS_RCU=y, but is defined for all kernesl with > CONFIG_TASKS_RCU_GENERIC=y. Therefore, in kernels built with > CONFIG_TASKS_RCU_GENERIC=y but CONFIG_TASKS_RCU=n, this gives > a "defined but not used" warning. > > This commit therefore moves this variable under CONFIG_TASKS_RCU. > > Link: https://lore.kernel.org/oe-kbuild-all/202303191536.XzMSyzTl-lkp@intel.com/ > Reported-by: kernel test robot <lkp@intel.com> > Signed-off-by: Paul E. McKenney <paulmck@kernel.org> > --- > kernel/rcu/tasks.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/kernel/rcu/tasks.h b/kernel/rcu/tasks.h > index bfb5e1549f2b..185358c2f08d 100644 > --- a/kernel/rcu/tasks.h > +++ b/kernel/rcu/tasks.h > @@ -136,8 +136,10 @@ static struct rcu_tasks rt_name = \ > .kname = #rt_name, \ > } > > +#ifdef CONFIG_TASKS_RCU > /* Track exiting tasks in order to allow them to be waited for. */ > DEFINE_STATIC_SRCU(tasks_rcu_exit_srcu); > +#endif
Reviewed-by: Frederic Weisbecker <frederic@kernel.org>
BTW should exit_tasks_rcu_start/stop() be defined as static inline stubs whenever !CONFIG_TASKS_RCU ? Currently:
* if CONFIG_TASKS_RCU_GENERIC=n, the stubs are as usual (static inline)
* if CONFIG_TASKS_RCU_GENERIC=y && CONFIG_TASKS_RCU=n, then the stubs are defined as empty linked function (is the compiler smart enough to remove the empty call?)
| |