diff mbox

bcm47xx: fix build regression

Message ID 20170531163110.GL3956@linux.vnet.ibm.com
State Not Applicable
Headers show

Commit Message

Paul E. McKenney May 31, 2017, 4:31 p.m. UTC
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@linux.vnet.ibm.com> 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@broadcom.com> 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.
> >
> > 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?

							Thanx, Paul

------------------------------------------------------------------------

commit ff278071dce9af9da2b5e2b33f682710a855d266
Author: Arnd Bergmann <arnd@arndb.de>
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@arndb.de>
    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>

Comments

Arend van Spriel May 31, 2017, 7:30 p.m. UTC | #1
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@linux.vnet.ibm.com> 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@broadcom.com> 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@arndb.de>
> 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@arndb.de>
>     Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> 
> 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>
>
Paul E. McKenney June 1, 2017, 10:16 p.m. UTC | #2
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@linux.vnet.ibm.com> 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@broadcom.com> 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@arndb.de>
> > 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@arndb.de>
> >     Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
> > 
> > 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>
> > 
>
diff mbox

Patch

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>