Re: [PATCH 2.6.24-mm1] error compiling net driver NE2000/NE1000

From: Andrew Morton
Date: Mon Feb 04 2008 - 16:12:08 EST


On Mon, 4 Feb 2008 16:29:21 +0100
Pierre Peiffer <pierre.peiffer@xxxxxxxx> wrote:

> Hi,
>
> When I compile the kernel 2.6.24-mm1 with:
> CONFIG_NET_ISA=y
> CONFIG_NE2000=y
>
> I have the following compile error:
> ...
> GEN .version
> CHK include/linux/compile.h
> UPD include/linux/compile.h
> CC init/version.o
> LD init/built-in.o
> LD .tmp_vmlinux1
> drivers/built-in.o: In function `ne_block_output':
> linux-2.6.24-mm1/drivers/net/ne.c:797: undefined reference to `NS8390_init'
> drivers/built-in.o: In function `ne_drv_resume':
> linux-2.6.24-mm1/drivers/net/ne.c:858: undefined reference to `NS8390_init'
> drivers/built-in.o: In function `ne_probe1':
> linux-2.6.24-mm1/drivers/net/ne.c:539: undefined reference to `NS8390_init'
> make[1]: *** [.tmp_vmlinux1] Error 1
> make: *** [sub-make] Error 2

Thanks for reporting this.

> As I saw that the file 8390p.c is compiled for this driver, but not the file
> 8390.c which contains this function NS8390_init(), I fixed this error with
> the following patch.

Alan's
8390-split-8390-support-into-a-pausing-and-a-non-pausing-driver-core.patch
would be a prime suspect. I assume this bug isn't present ing mainline or
in 2.6.24?

> As NS8390p_init() does the same thing than NS8390_init(), I suppose that this is the right fix ?
>
> Signed-off-by: Pierre Peiffer <pierre.peiffer@xxxxxxxx>
> ---
> drivers/net/ne.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> Index: b/drivers/net/ne.c
> ===================================================================
> --- a/drivers/net/ne.c
> +++ b/drivers/net/ne.c
> @@ -536,7 +536,7 @@ static int __init ne_probe1(struct net_d
> #ifdef CONFIG_NET_POLL_CONTROLLER
> dev->poll_controller = eip_poll;
> #endif
> - NS8390_init(dev, 0);
> + NS8390p_init(dev, 0);
>
> ret = register_netdev(dev);
> if (ret)
> @@ -794,7 +794,7 @@ retry:
> if (time_after(jiffies, dma_start + 2*HZ/100)) { /* 20ms */
> printk(KERN_WARNING "%s: timeout waiting for Tx RDC.\n", dev->name);
> ne_reset_8390(dev);
> - NS8390_init(dev,1);
> + NS8390p_init(dev,1);
> break;
> }
>
> @@ -855,7 +855,7 @@ static int ne_drv_resume(struct platform
>
> if (netif_running(dev)) {
> ne_reset_8390(dev);
> - NS8390_init(dev, 1);
> + NS8390p_init(dev, 1);
> netif_device_attach(dev);
> }
> return 0;


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/