On Wed, May 31, 2017 at 09:30:19PM +0200, Arend van Spriel wrote: > On 31-05-17 18:31, Paul E. McKenney wrote: > > On Wed, May 31, 2017 at 03:34:57PM +0200, Arnd Bergmann wrote: > >> On Wed, May 31, 2017 at 3:12 PM, Paul E. McKenney > >> <paulmck@xxxxxxxxxxxxxxxxxx> wrote: > >>> On Wed, May 31, 2017 at 12:21:10PM +0200, Arnd Bergmann wrote: > >>>> On Wed, May 31, 2017 at 11:43 AM, Arend van Spriel > >>>> <arend.vanspriel@xxxxxxxxxxxx> wrote: > >>>>> On 5/30/2017 1:20 PM, Arnd Bergmann wrote: > >>>>>> > >>>>>> An unknown change in the kernel headers caused a build regression > >>>>>> in an MTD partition driver: > >>>>>> > >>>>>> In file included from drivers/mtd/bcm47xxpart.c:12:0: > >>>>>> include/linux/bcm47xx_nvram.h: In function 'bcm47xx_nvram_init_from_mem': > >>>>>> include/linux/bcm47xx_nvram.h:27:10: error: 'ENOTSUPP' undeclared (first > >>>>>> use in this function) > >>>>>> > >>>>>> Clearly we want to include linux/errno.h here. > >>>>> > >>>>> > >>>>> unfortunate that you did not find the commit that caused this build > >>>>> regression. You could produce preprocessor output when it was working to see > >>>>> where errno.h got implicitly included and start looking there for git > >>>>> history. > >>>> > >>>> I did a 'git bisect run make drivers/mtd/bcm47xxpart.o' now, which pointed to > >>>> 0bc2d534708b ("rcu: Refactor #includes from include/linux/rcupdate.h"). > >>>> > >>>> That commit seems reasonable, it was just bad luck that it caused this > >>>> regression. The commit is currently in the rcu/rcu/next branch of tip.git, > >>>> so Paul could merge the patch there. > > Arnd, > > Thanks for digging a bit further. I am a sucker for telling the whole story. > > >>> > >>> Apologies for the inconvenience, not sure why 0day test robot didn't > >>> find this. Probably because it cannot test each and every driver. ;-) > >> > >> No worries. > >> > >>> This patch, correct? > >>> > >>> https://lkml.org/lkml/2017/5/30/348 > >> > >> Right, I should have included the link. > > > > And my turn to say "no worries". ;-) > > > > I reworked the commit log to tell the full story as shown below. > > Anything I misstated or otherwise missed? > > Maybe add the 'Fixes:' tag, ie.: > > Fixes: 0bc2d534708b ("rcu: Refactor #includes from > include/linux/rcupdate.h") > > Seems a bit redundant given that you mentioned it in the commit message, > but it might be looked for in kernel-stats scripts. Had to rebase anyway for other reasons, so why not? Thanx, Paul > Regards, > Arend > > > Thanx, Paul > > > > ------------------------------------------------------------------------ > > > > commit ff278071dce9af9da2b5e2b33f682710a855d266 > > Author: Arnd Bergmann <arnd@xxxxxxxx> > > Date: Wed May 31 09:26:07 2017 -0700 > > > > bcm47xx: fix build regression > > > > Commit 0bc2d534708b ("rcu: Refactor #includes from include/linux/rcupdate.h") > > caused a build regression in an MTD partition driver: > > > > In file included from drivers/mtd/bcm47xxpart.c:12:0: > > include/linux/bcm47xx_nvram.h: In function 'bcm47xx_nvram_init_from_mem': > > include/linux/bcm47xx_nvram.h:27:10: error: 'ENOTSUPP' undeclared (first use in this function) > > > > The rcupdate.h file has no particular need for linux/errno.h, so this > > commit includes linux/errno.h into bcm47xx_nvram.h. > > > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> > > Signed-off-by: Paul E. McKenney <paulmck@xxxxxxxxxxxxxxxxxx> > > > > diff --git a/include/linux/bcm47xx_nvram.h b/include/linux/bcm47xx_nvram.h > > index 2793652fbf66..a414a2b53e41 100644 > > --- a/include/linux/bcm47xx_nvram.h > > +++ b/include/linux/bcm47xx_nvram.h > > @@ -8,6 +8,7 @@ > > #ifndef __BCM47XX_NVRAM_H > > #define __BCM47XX_NVRAM_H > > > > +#include <linux/errno.h> > > #include <linux/types.h> > > #include <linux/kernel.h> > > #include <linux/vmalloc.h> > > >