Re: [v2 PATCH] printk: Make linux/printk.h self-contained

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jun 12, 2020 at 03:14:05PM +0200, Petr Mladek wrote:
> On Fri 2020-06-12 14:36:35, Herbert Xu wrote:
> > As it stands if you include printk.h by itself it will fail to
> > compile because it requires definitions from ratelimit.h.  However,
> > simply including ratelimit.h from printk.h does not work due to
> > inclusion loops involving sched.h and kernel.h.
> > 
> > This patch solves this by moving bits from ratelimit.h into a new
> > header file which can then be included by printk.h without any
> > worries about header loops.
> > 
> > The build bot then revealed some intriguing failures arising out
> > of this patch.  On s390 there is an inclusion loop with asm/bug.h
> > and linux/kernel.h that triggers a compile failure, because kernel.h
> > will cause asm-generic/bug.h to be included before s390's own
> > asm/bug.h has finished processing.  This has been fixed by not
> > including kernel.h in arch/s390/include/asm/bug.h.
> > 
> > A related failure was seen on powerpc where asm/bug.h leads to
> > the inclusion of linux/kernel.h via asm-generic/bug.h which then
> > prematurely tries to use the very macros defined in asm/bug.h.
> > The particular inclusion path which led to this involves lockdep.h.
> > I have fixed this moving the type definitions lockdep.h into the
> > new lockdep_types.h.
> > 
> > Signed-off-by: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx>
> 
> I am fine with the changes as long as the kernel test robot
> does not complain ;-)
> 
> Acked-by: Petr Mladek <pmladek@xxxxxxxx>
> 
> Well, I wonder if PeterZ is fine with the lockdep part. It might make
> sense to split it into separate patch as a prerequisite.

They look fine, but yes, I think it makes sense to split that out.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux