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. 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> >