Re: [PATCH v9 07/61] xarray: Add the xa_lock to the radix_tree_root

From: Matthew Wilcox
Date: Thu Apr 12 2018 - 17:22:12 EST


On Thu, Apr 12, 2018 at 03:16:23PM -0600, Ross Zwisler wrote:
> 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?

No, Andrew only merged the first 8 or so because of lack of review of
the remaining patches. Even though I cc'd people as hard as I could.
Including you. :-P

You could, for example, review the DAX patches ...