On Tue, Apr 23, 2019 at 05:08:14PM +0200, Sebastian Andrzej Siewior wrote:
> On 2019-04-23 05:46:19 [-0700], Paul E. McKenney wrote:
> > On Tue, Apr 23, 2019 at 06:33:33PM +0800, kbuild test robot wrote:
> > > tree:   
> > > https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git 
> > > dev.2019.04.16a
> > > head:   ca8714f549be5a186d086a223184095759eb7094
> > > commit: 9a1a31194644dfc6b8f19755ea44ecf84f37cf40 [38/72] rcu: Enable 
> > > elimination of Tree-RCU softirq processing
> > > reproduce:
> > >         # apt-get install sparse
> > >         git checkout 9a1a31194644dfc6b8f19755ea44ecf84f37cf40
> > >         make ARCH=x86_64 allmodconfig
> > >         make C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__'
> > > 
> > > If you fix the issue, kindly add following tag
> > > Reported-by: kbuild test robot <[email protected]>
> > > 
> > > 
> > > 
> > > sparse warnings: (new ones prefixed by >>)
> > > 
> > > >> kernel/rcu/tree.c:2408:36: sparse: sparse: incorrect type in 
> > > >> initializer (different address spaces) @@    expected struct 
> > > >> task_struct [noderef] <asn:3> **store @@    got struct task_struct 
> > > >> [noderef] <asn:3> **store @@
> > 
> > Line 2408 of kernel/rcu/tree.c for commit 9a1a31194644 ("rcu: Enable
> > elimination of Tree-RCU softirq processing") is this:
> > 
> >     .store                  = &rcu_data.rcu_cpu_kthread_task,
> > 
> > So I am having some difficulty understanding this sparse diagnostic.
> > 
> > Help?
> 
> this helps
> 
> diff --git a/include/linux/smpboot.h b/include/linux/smpboot.h
> index d0884b5250010..c2678e29807c1 100644
> --- a/include/linux/smpboot.h
> +++ b/include/linux/smpboot.h
> @@ -29,7 +29,7 @@ struct smpboot_thread_data;
>   * @thread_comm:     The base name of the thread
>   */
>  struct smp_hotplug_thread {
> -     struct task_struct __percpu     **store;
> +     struct task_struct              *__percpu *store;
>       struct list_head                list;
>       int                             (*thread_should_run)(unsigned int cpu);
>       void                            (*thread_fn)(unsigned int cpu);
> 
> 
> I just need to find the correct words for it.
> And yes, it is not RCU related…

Ah, thank you!  Shall I fold the above patch into your existing one,
or are you looking to do something else here?

                                                        Thanx, Paul

Reply via email to