Re: [PATCH] MCS spinlock: Use smp_cond_load_acquire()

From: Jason Low
Date: Tue Apr 12 2016 - 19:55:54 EST


On Tue, 2016-04-12 at 16:40 -0700, Jason Low wrote:
> On Wed, 2016-04-13 at 06:39 +0800, kbuild test robot wrote:
> > Hi Jason,
> >
> > [auto build test ERROR on v4.6-rc3]
> > [also build test ERROR on next-20160412]
> > [cannot apply to tip/core/locking]
> > [if your patch is applied to the wrong git tree, please drop us a note to help improving the system]
> >
> > url: https://github.com/0day-ci/linux/commits/Jason-Low/MCS-spinlock-Use-smp_cond_load_acquire/20160413-053726
> > config: i386-randconfig-s0-201615 (attached as .config)
> > reproduce:
> > # save the attached .config to linux build tree
> > make ARCH=i386
> >
> > All error/warnings (new ones prefixed by >>):
> >
> > In file included from kernel/locking/qspinlock.c:70:0:
> > kernel/locking/mcs_spinlock.h: In function 'mcs_spin_lock':
> > >> kernel/locking/mcs_spinlock.h:31:2: error: implicit declaration of function 'smp_cond_load_acquire' [-Werror=implicit-function-declaration]
> > smp_cond_load_acquire(&l, VAL); \
>
> Hello,
>
> This patch depends on the "smp_cond_load_acquire + cmpwait" patchset,
> which is in:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git locking/rfc

Although I added an extra & in "smp_cond_load_acquire(&l, VAL)" when I
recreated the patch. l is already a pointer, so this call should really
be:

smp_cond_load_acquire(l, VAL);