2017-03-08 01:18:00

by Stephen Rothwell

[permalink] [raw]
Subject: linux-next: build failure after merge of the rcu tree

Hi Paul,

After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
failed like this:

In file included from include/linux/resource_ext.h:19:0,
from include/linux/pci.h:32,
from include/drm/drmP.h:50,
from drivers/gpu/drm/i915/i915_gem.c:28:
drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':
drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: error: 'SLAB_DESTROY_BY_RCU' undeclared (first use in this function)
SLAB_DESTROY_BY_RCU);
^
include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
(__flags), NULL)
^
drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: note: each undeclared identifier is reported only once for each function it appears in
SLAB_DESTROY_BY_RCU);
^
include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
(__flags), NULL)
^
/

Caused by commit

24b7cb25b8d1 ("mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU")

interacting with commit

0daf0113cff6 ("drm/i915: Mock infrastructure for request emission")

from the drm-intel tree.

I added the following merge fix patch:

From: Stephen Rothwell <[email protected]>
Date: Wed, 8 Mar 2017 12:09:49 +1100
Subject: [PATCH] drm/i915: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to
SLAB_TYPESAFE_BY_RCU"

Signed-off-by: Stephen Rothwell <[email protected]>
---
drivers/gpu/drm/i915/selftests/mock_gem_device.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
index 6a8258eacdcb..9f24c5da3f8d 100644
--- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c
+++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
@@ -174,7 +174,7 @@ struct drm_i915_private *mock_gem_device(void)
i915->requests = KMEM_CACHE(mock_request,
SLAB_HWCACHE_ALIGN |
SLAB_RECLAIM_ACCOUNT |
- SLAB_DESTROY_BY_RCU);
+ SLAB_TYPESAFE_BY_RCU);
if (!i915->requests)
goto err_vmas;

--
2.11.0

--
Cheers,
Stephen Rothwell


2017-03-08 01:34:53

by Stephen Rothwell

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the rcu tree

Hi Paul,

On Mon, 13 Feb 2017 17:43:24 +1100 Stephen Rothwell <[email protected]> wrote:
>
> On Sun, 12 Feb 2017 20:37:48 -0800 "Paul E. McKenney" <[email protected]> wrote:
> >
> > I chickened out on that commit for this merge window, so it will come
> > back at -rc1. But I will cover that when I rebase to -rc1.
>
> OK, thanks.

[PATCH] smc: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU"
is needed again ... maybe time to rebase?

--
Cheers,
Stephen Rothwell

2017-03-08 05:23:31

by Paul E. McKenney

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the rcu tree

On Wed, Mar 08, 2017 at 12:16:05PM +1100, Stephen Rothwell wrote:
> Hi Paul,
>
> On Mon, 13 Feb 2017 17:43:24 +1100 Stephen Rothwell <[email protected]> wrote:
> >
> > On Sun, 12 Feb 2017 20:37:48 -0800 "Paul E. McKenney" <[email protected]> wrote:
> > >
> > > I chickened out on that commit for this merge window, so it will come
> > > back at -rc1. But I will cover that when I rebase to -rc1.
> >
> > OK, thanks.
>
> [PATCH] smc: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU"
> is needed again ... maybe time to rebase?

On my list for tomorrow morning. ;-)

Thanx, Paul

2017-03-08 12:14:06

by Daniel Vetter

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the rcu tree

On Wed, Mar 08, 2017 at 12:16:45PM +1100, Stephen Rothwell wrote:
> Hi Paul,
>
> After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
> failed like this:
>
> In file included from include/linux/resource_ext.h:19:0,
> from include/linux/pci.h:32,
> from include/drm/drmP.h:50,
> from drivers/gpu/drm/i915/i915_gem.c:28:
> drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':
> drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: error: 'SLAB_DESTROY_BY_RCU' undeclared (first use in this function)
> SLAB_DESTROY_BY_RCU);
> ^
> include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
> (__flags), NULL)
> ^
> drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: note: each undeclared identifier is reported only once for each function it appears in
> SLAB_DESTROY_BY_RCU);
> ^
> include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
> (__flags), NULL)
> ^
> /
>
> Caused by commit
>
> 24b7cb25b8d1 ("mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU")

Awesome rename. Count us in among the people who first thought this
provides more guarantees than it does.

> interacting with commit
>
> 0daf0113cff6 ("drm/i915: Mock infrastructure for request emission")
>
> from the drm-intel tree.
>
> I added the following merge fix patch:
>
> From: Stephen Rothwell <[email protected]>
> Date: Wed, 8 Mar 2017 12:09:49 +1100
> Subject: [PATCH] drm/i915: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to
> SLAB_TYPESAFE_BY_RCU"
>
> Signed-off-by: Stephen Rothwell <[email protected]>

Should we handle this with a topic branch? It's trivial to resolve, but I
fear the note that this conflict exists might get lost somewhere between
now and when the drm pull lands in Linus' inbox in 2 months ...

Otoh he's probably going to compile test drm extra carefully and will
notice :-)
-Daniel

> ---
> drivers/gpu/drm/i915/selftests/mock_gem_device.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> index 6a8258eacdcb..9f24c5da3f8d 100644
> --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> @@ -174,7 +174,7 @@ struct drm_i915_private *mock_gem_device(void)
> i915->requests = KMEM_CACHE(mock_request,
> SLAB_HWCACHE_ALIGN |
> SLAB_RECLAIM_ACCOUNT |
> - SLAB_DESTROY_BY_RCU);
> + SLAB_TYPESAFE_BY_RCU);
> if (!i915->requests)
> goto err_vmas;
>
> --
> 2.11.0
>
> --
> Cheers,
> Stephen Rothwell

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch

2017-03-08 17:40:27

by Paul E. McKenney

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the rcu tree

On Wed, Mar 08, 2017 at 11:13:38AM +0100, Daniel Vetter wrote:
> On Wed, Mar 08, 2017 at 12:16:45PM +1100, Stephen Rothwell wrote:
> > Hi Paul,
> >
> > After merging the rcu tree, today's linux-next build (x86_64 allmodconfig)
> > failed like this:
> >
> > In file included from include/linux/resource_ext.h:19:0,
> > from include/linux/pci.h:32,
> > from include/drm/drmP.h:50,
> > from drivers/gpu/drm/i915/i915_gem.c:28:
> > drivers/gpu/drm/i915/selftests/mock_gem_device.c: In function 'mock_gem_device':
> > drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: error: 'SLAB_DESTROY_BY_RCU' undeclared (first use in this function)
> > SLAB_DESTROY_BY_RCU);
> > ^
> > include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
> > (__flags), NULL)
> > ^
> > drivers/gpu/drm/i915/selftests/mock_gem_device.c:177:9: note: each undeclared identifier is reported only once for each function it appears in
> > SLAB_DESTROY_BY_RCU);
> > ^
> > include/linux/slab.h:149:4: note: in definition of macro 'KMEM_CACHE'
> > (__flags), NULL)
> > ^
> > /
> >
> > Caused by commit
> >
> > 24b7cb25b8d1 ("mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU")
>
> Awesome rename. Count us in among the people who first thought this
> provides more guarantees than it does.

Glad you like it! ;-)

> > interacting with commit
> >
> > 0daf0113cff6 ("drm/i915: Mock infrastructure for request emission")
> >
> > from the drm-intel tree.
> >
> > I added the following merge fix patch:
> >
> > From: Stephen Rothwell <[email protected]>
> > Date: Wed, 8 Mar 2017 12:09:49 +1100
> > Subject: [PATCH] drm/i915: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to
> > SLAB_TYPESAFE_BY_RCU"
> >
> > Signed-off-by: Stephen Rothwell <[email protected]>
>
> Should we handle this with a topic branch? It's trivial to resolve, but I
> fear the note that this conflict exists might get lost somewhere between
> now and when the drm pull lands in Linus' inbox in 2 months ...
>
> Otoh he's probably going to compile test drm extra carefully and will
> notice :-)

If it gets too ugly, I can always allow both SLAB_TYPESAFE_BY_RCU
and SLAB_DESTROY_BY_RCU as synonyms in 4.12, and then remove
SLAB_DESTROY_BY_RCU in 4.13.

Thanx, Paul

> -Daniel
>
> > ---
> > drivers/gpu/drm/i915/selftests/mock_gem_device.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/i915/selftests/mock_gem_device.c b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> > index 6a8258eacdcb..9f24c5da3f8d 100644
> > --- a/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> > +++ b/drivers/gpu/drm/i915/selftests/mock_gem_device.c
> > @@ -174,7 +174,7 @@ struct drm_i915_private *mock_gem_device(void)
> > i915->requests = KMEM_CACHE(mock_request,
> > SLAB_HWCACHE_ALIGN |
> > SLAB_RECLAIM_ACCOUNT |
> > - SLAB_DESTROY_BY_RCU);
> > + SLAB_TYPESAFE_BY_RCU);
> > if (!i915->requests)
> > goto err_vmas;
> >
> > --
> > 2.11.0
> >
> > --
> > Cheers,
> > Stephen Rothwell
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> http://blog.ffwll.ch
>

2017-03-08 18:06:14

by Paul E. McKenney

[permalink] [raw]
Subject: Re: linux-next: build failure after merge of the rcu tree

On Wed, Mar 08, 2017 at 12:16:05PM +1100, Stephen Rothwell wrote:
> Hi Paul,
>
> On Mon, 13 Feb 2017 17:43:24 +1100 Stephen Rothwell <[email protected]> wrote:
> >
> > On Sun, 12 Feb 2017 20:37:48 -0800 "Paul E. McKenney" <[email protected]> wrote:
> > >
> > > I chickened out on that commit for this merge window, so it will come
> > > back at -rc1. But I will cover that when I rebase to -rc1.
> >
> > OK, thanks.
>
> [PATCH] smc: merge fix for "mm: Rename SLAB_DESTROY_BY_RCU to SLAB_TYPESAFE_BY_RCU"
> is needed again ... maybe time to rebase?

And I did rebase and push. Passes light build testing, will be testing
more vigorously later today.

Thanx, Paul