Re: [PATCH net-next] net: sunhme: move asm includes to below linux includes

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

 



On 4/5/23 14:07, Matthew Wilcox wrote:
On Wed, Apr 05, 2023 at 08:02:37PM +0200, Simon Horman wrote:
On Wed, Apr 05, 2023 at 01:34:11PM -0400, Sean Anderson wrote:
On 4/5/23 13:29, Simon Horman wrote:
A recent rearrangement of includes has lead to a problem on m68k
as flagged by the kernel test robot.

Resolve this by moving the block asm includes to below linux includes.
A side effect i that non-Sparc asm includes are now immediately
before Sparc asm includes, which seems nice.

Using sparse v0.6.4 I was able to reproduce this problem as follows
using the config provided by the kernel test robot:

$ wget https://download.01.org/0day-ci/archive/20230404/202304041748.0sQc4K4l-lkp@xxxxxxxxx/config
$ cp config .config
$ make ARCH=m68k oldconfig
$ make ARCH=m68k C=2 M=drivers/net/ethernet/sun
     CC [M]  drivers/net/ethernet/sun/sunhme.o
   In file included from drivers/net/ethernet/sun/sunhme.c:19:
   ./arch/m68k/include/asm/irq.h:78:11: error: expected ‘;’ before ‘void’
      78 | asmlinkage void do_IRQ(int irq, struct pt_regs *regs);
         |           ^~~~~
         |           ;
   ./arch/m68k/include/asm/irq.h:78:40: warning: ‘struct pt_regs’ declared inside parameter list will not be visible outside of this definition or declaration
      78 | asmlinkage void do_IRQ(int irq, struct pt_regs *regs);
         |                                        ^~~~~~~

This seems like a problem with the header. m68k's asm/irq.h should include linux/interrupt.h before its declarations.

Hi Sean,

I do see your point. But TBH I'm unsure which way to go on this one.
Geert, do you have any input?

We always include linux/* headers before asm/*.  The "sorting" of
headers in this way was inappropriate.

Is this written down anywhere? I couldn't find it in Documentation/process...

--Sean




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux