On Thu, Apr 12, 2018 at 3:10 PM, Matthew Wilcox <willy@xxxxxxxxxxxxx> wrote: > On Thu, Apr 12, 2018 at 02:59:32PM -0600, Ross Zwisler wrote: >> This is causing build breakage in the radix tree test suite in the >> current linux/master: >> >> ./linux/../../../../include/linux/idr.h: In function ‘idr_init_base’: >> ./linux/../../../../include/linux/radix-tree.h:129:2: warning: >> implicit declaration of function ‘spin_lock_init’; did you mean >> ‘spinlock_t’? [-Wimplicit-function-declaration] > > Argh. That was added two patches later in > "xarray: Add definition of struct xarray": > > diff --git a/tools/include/linux/spinlock.h b/tools/include/linux/spinlock.h > index b21b586b9854..4ec4d2cbe27a 100644 > --- a/tools/include/linux/spinlock.h > +++ b/tools/include/linux/spinlock.h > @@ -6,8 +6,9 @@ > #include <stdbool.h> > > #define spinlock_t pthread_mutex_t > -#define DEFINE_SPINLOCK(x) pthread_mutex_t x = PTHREAD_MUTEX_INITIALIZER; > +#define DEFINE_SPINLOCK(x) pthread_mutex_t x = PTHREAD_MUTEX_INITIALIZER > #define __SPIN_LOCK_UNLOCKED(x) (pthread_mutex_t)PTHREAD_MUTEX_INITIALIZER > +#define spin_lock_init(x) pthread_mutex_init(x, NULL) > > #define spin_lock_irqsave(x, f) (void)f, pthread_mutex_lock(x) > #define spin_unlock_irqrestore(x, f) (void)f, pthread_mutex_unlock(x) > > I didn't pick up that it was needed this early on in the patch series. Hmmm..I don't know if it's a patch ordering issue, because this happens with the current linux/master where presumably all the patches are present?