linux-next: build failure after merge of the net-next tree

5 messages, 2 authors, 2021-09-01 · open the first message on its own page

linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <hidden>
Date: 2021-08-09 10:20:57

Hi all,

After merging the net-next tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open':
drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration]
  897 |     (unsigned long)isa_virt_to_bus(lp->dma_buff));
      |                    ^~~~~~~~~~~~~~~
include/linux/dynamic_debug.h:134:15: note: in definition of macro '__dynamic_func_call'
  134 |   func(&id, ##__VA_ARGS__);  \
      |               ^~~~~~~~~~~
include/linux/dynamic_debug.h:162:2: note: in expansion of macro '_dynamic_func_call'
  162 |  _dynamic_func_call(fmt, __dynamic_pr_debug,  \
      |  ^~~~~~~~~~~~~~~~~~
include/linux/printk.h:570:2: note: in expansion of macro 'dynamic_pr_debug'
  570 |  dynamic_pr_debug(fmt, ##__VA_ARGS__)
      |  ^~~~~~~~~~~~~~~~
drivers/net/ethernet/cirrus/cs89x0.c:86:3: note: in expansion of macro 'pr_debug'
   86 |   pr_##level(fmt, ##__VA_ARGS__);   \
      |   ^~~
drivers/net/ethernet/cirrus/cs89x0.c:894:3: note: in expansion of macro 'cs89_dbg'
  894 |   cs89_dbg(1, debug, "%s: dma %lx %lx\n",
      |   ^~~~~~~~

Caused by commit

  47fd22f2b847 ("cs89x0: rework driver configuration")

I have removed the COMPILE_TEST from NET_VENDOR_CIRRUS for now.

-- 
Cheers,
Stephen Rothwell

Re: linux-next: build failure after merge of the net-next tree

From: Arnd Bergmann <arnd@arndb.de>
Date: 2021-08-09 13:22:23

On Mon, Aug 9, 2021 at 12:20 PM Stephen Rothwell [off-list ref] wrote:
Hi all,

After merging the net-next tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open':
drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration]
  897 |     (unsigned long)isa_virt_to_bus(lp->dma_buff));
      |                    ^~~~~~~~~~~~~~~
Thank you for the report! I already sent a patch for m68knommu running into
this issue, but it seems there are other architectures that still have it.

The driver checks CONFIG_ISA_DMA_API at compile time to determine
whether isa_virt_to_bus(), set_dma_mode(), set_dma_addr(), ... are all
defined.

It seems that isa_virt_to_bus() is only implemented on most of the
architectures that set ISA_DMA_API: alpha, arm, mips, parisc and x86,
but not on m68k/coldfire and powerpc.

Before my patch, the platform driver could only be built on ARM,
so maybe we should just go back to that dependency or something
like

         depends on ARM || ((X86 || !ISA_DMA_API) && COMPILE_TEST)

for extra build coverage. Then again, it's hard to find any machine
actually using these: we have a couple of s3c24xx machines that
use the wrong device name, so the device never gets probed, the imx
machines that used to work are gone, and the ep7211-edb7211.dts
is missing a device node for it. Most likely, neither the platform nor
the ISA driver are actually used by anyone.

     Arnd

Re: linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <hidden>
Date: 2021-08-15 12:04:47

Hi all,

On Mon, 9 Aug 2021 15:21:41 +0200 Arnd Bergmann [off-list ref] wrote:
On Mon, Aug 9, 2021 at 12:20 PM Stephen Rothwell [off-list ref] wrote:
quoted
After merging the net-next tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open':
drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration]
  897 |     (unsigned long)isa_virt_to_bus(lp->dma_buff));
      |                    ^~~~~~~~~~~~~~~  
Thank you for the report! I already sent a patch for m68knommu running into
this issue, but it seems there are other architectures that still have it.

The driver checks CONFIG_ISA_DMA_API at compile time to determine
whether isa_virt_to_bus(), set_dma_mode(), set_dma_addr(), ... are all
defined.

It seems that isa_virt_to_bus() is only implemented on most of the
architectures that set ISA_DMA_API: alpha, arm, mips, parisc and x86,
but not on m68k/coldfire and powerpc.

Before my patch, the platform driver could only be built on ARM,
so maybe we should just go back to that dependency or something
like

         depends on ARM || ((X86 || !ISA_DMA_API) && COMPILE_TEST)

for extra build coverage. Then again, it's hard to find any machine
actually using these: we have a couple of s3c24xx machines that
use the wrong device name, so the device never gets probed, the imx
machines that used to work are gone, and the ep7211-edb7211.dts
is missing a device node for it. Most likely, neither the platform nor
the ISA driver are actually used by anyone.
I am still applying my patch removing COMPILE_TEST from this driver ..
-- 
Cheers,
Stephen Rothwell

Re: linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <hidden>
Date: 2021-08-19 23:16:40

Hi all,

On Sun, 15 Aug 2021 22:04:32 +1000 Stephen Rothwell [off-list ref] wrote:
On Mon, 9 Aug 2021 15:21:41 +0200 Arnd Bergmann [off-list ref] wrote:
quoted
On Mon, Aug 9, 2021 at 12:20 PM Stephen Rothwell [off-list ref] wrote:  
quoted
After merging the net-next tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open':
drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration]
  897 |     (unsigned long)isa_virt_to_bus(lp->dma_buff));
      |                    ^~~~~~~~~~~~~~~    
Thank you for the report! I already sent a patch for m68knommu running into
this issue, but it seems there are other architectures that still have it.

The driver checks CONFIG_ISA_DMA_API at compile time to determine
whether isa_virt_to_bus(), set_dma_mode(), set_dma_addr(), ... are all
defined.

It seems that isa_virt_to_bus() is only implemented on most of the
architectures that set ISA_DMA_API: alpha, arm, mips, parisc and x86,
but not on m68k/coldfire and powerpc.

Before my patch, the platform driver could only be built on ARM,
so maybe we should just go back to that dependency or something
like

         depends on ARM || ((X86 || !ISA_DMA_API) && COMPILE_TEST)

for extra build coverage. Then again, it's hard to find any machine
actually using these: we have a couple of s3c24xx machines that
use the wrong device name, so the device never gets probed, the imx
machines that used to work are gone, and the ep7211-edb7211.dts
is missing a device node for it. Most likely, neither the platform nor
the ISA driver are actually used by anyone.  
I am still applying my patch removing COMPILE_TEST from this driver ..
Ping?  Did I miss a fix being merged?

-- 
Cheers,
Stephen Rothwell

Re: linux-next: build failure after merge of the net-next tree

From: Stephen Rothwell <hidden>
Date: 2021-09-01 06:44:54

Hi all,

On Fri, 20 Aug 2021 09:16:27 +1000 Stephen Rothwell [off-list ref] wrote:
On Sun, 15 Aug 2021 22:04:32 +1000 Stephen Rothwell [off-list ref] wrote:
quoted
On Mon, 9 Aug 2021 15:21:41 +0200 Arnd Bergmann [off-list ref] wrote:  
quoted
On Mon, Aug 9, 2021 at 12:20 PM Stephen Rothwell [off-list ref] wrote:    
quoted
After merging the net-next tree, today's linux-next build (powerpc
allyesconfig) failed like this:

drivers/net/ethernet/cirrus/cs89x0.c: In function 'net_open':
drivers/net/ethernet/cirrus/cs89x0.c:897:20: error: implicit declaration of function 'isa_virt_to_bus' [-Werror=implicit-function-declaration]
  897 |     (unsigned long)isa_virt_to_bus(lp->dma_buff));
      |                    ^~~~~~~~~~~~~~~      
Thank you for the report! I already sent a patch for m68knommu running into
this issue, but it seems there are other architectures that still have it.

The driver checks CONFIG_ISA_DMA_API at compile time to determine
whether isa_virt_to_bus(), set_dma_mode(), set_dma_addr(), ... are all
defined.

It seems that isa_virt_to_bus() is only implemented on most of the
architectures that set ISA_DMA_API: alpha, arm, mips, parisc and x86,
but not on m68k/coldfire and powerpc.

Before my patch, the platform driver could only be built on ARM,
so maybe we should just go back to that dependency or something
like

         depends on ARM || ((X86 || !ISA_DMA_API) && COMPILE_TEST)

for extra build coverage. Then again, it's hard to find any machine
actually using these: we have a couple of s3c24xx machines that
use the wrong device name, so the device never gets probed, the imx
machines that used to work are gone, and the ep7211-edb7211.dts
is missing a device node for it. Most likely, neither the platform nor
the ISA driver are actually used by anyone.    
I am still applying my patch removing COMPILE_TEST from this driver ..  
Ping?  Did I miss a fix being merged?
Ping, again.  The net=next tree has now been merged by Linus, so has
this been fixed?  Or is Linus' tree now broken for this build?

-- 
Cheers,
Stephen Rothwell
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help