[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48865899.3030209@garzik.org>
Date: Tue, 22 Jul 2008 18:00:57 -0400
From: Jeff Garzik <jeff@...zik.org>
To: Ingo Molnar <mingo@...e.hu>
CC: Alan Cox <alan@...rguk.ukuu.org.uk>,
Atsushi Nemoto <anemo@....ocn.ne.jp>, jgarzik@...hat.com,
akpm@...ux-foundation.org, linux-kernel@...r.kernel.org,
netdev@...r.kernel.org
Subject: Re: [build failure] hp-plus.c: (.text+0xd7c1a): undefined reference
to `ei_close'
Ingo Molnar wrote:
> * Alan Cox <alan@...rguk.ukuu.org.uk> wrote:
>
>> On Mon, 21 Jul 2008 21:15:19 +0200
>> Ingo Molnar <mingo@...e.hu> wrote:
>>
>>> * Atsushi Nemoto <anemo@....ocn.ne.jp> wrote:
>>>
>>>> Since commit 055e5110ae0c0c1176a75b78d789294f2ff2f7af ("8390: Split
>>>> 8390 support into a pausing and a non pausing driver core"), ne.c
>>>> cause this build failure:
>>>>
>>>> drivers/built-in.o: In function `ne_probe1':
>>>> ne.c:(.init.text+0x2464): undefined reference to `NS8390_init'
>>>> drivers/built-in.o: In function `ne_block_output':
>>>> ne.c:(.text.ne_block_output+0x1b0): undefined reference to `NS8390_init'
>>> i just triggered a similar build failure, but in a different
>>> ne2000-derived file:
>> I'll take a look. Various odd things happened with the Makefile for
>> this patch and the follow up fixes. If the followup didn't get applied
>> then that might explain the breakage.
>
> ok. I also got:
>
> drivers/built-in.o: In function `hp_probe1':
> hp.c:(.init.text+0xa280): undefined reference to `NS8390_init'
>
> so i suspect most of the 8390p.o library using ne2000 drivers are
> affected?
>
> i think instead of a manual review i think this is better to fix all the
> problems:
>
> cd drivers/net/; sed -i 's/NS8390_/NS8390p_/g' \
> $(grep -l NS8390_ $(grep 8390p.o Makefile | cut -d' ' -f3 | \
> sed 's/.o$/.c/g'))
>
> find the full tested patch below. It solves the build failures i
> triggered so far.
>
> Ingo
>
> ------------->
> commit 79f2b8594df44a4f3f11085df656883525b74abd
> Author: Ingo Molnar <mingo@...e.hu>
> Date: Tue Jul 22 09:19:31 2008 +0200
>
> net 8390p: fix interface usage
>
> various drivers were using the wrong APIs:
>
> drivers/built-in.o: In function `hp_probe1':
> hp.c:(.init.text+0xa280): undefined reference to `NS8390_init'
>
> fixed via:
>
> cd drivers/net/; sed -i 's/NS8390_/NS8390p_/g' \
> $(grep -l NS8390_ $(grep 8390p.o Makefile | cut -d' ' -f3 | \
> sed 's/.o$/.c/g'))
>
> Signed-off-by: Ingo Molnar <mingo@...e.hu>
> ---
> drivers/net/hp-plus.c | 2 +-
> drivers/net/hp.c | 2 +-
> drivers/net/ne.c | 2 +-
> drivers/net/ne2.c | 2 +-
> 4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/hp-plus.c b/drivers/net/hp-plus.c
> index c2c4f49..8239939 100644
> --- a/drivers/net/hp-plus.c
> +++ b/drivers/net/hp-plus.c
> @@ -262,7 +262,7 @@ static int __init hpp_probe1(struct net_device *dev, int ioaddr)
> }
>
> outw(Perf_Page, ioaddr + HP_PAGING);
> - NS8390_init(dev, 0);
> + NS8390p_init(dev, 0);
> /* Leave the 8390 and HP chip reset. */
> outw(inw(ioaddr + HPP_OPTION) & ~EnableIRQ, ioaddr + HPP_OPTION);
>
> diff --git a/drivers/net/hp.c b/drivers/net/hp.c
> index 8281209..0a8c649 100644
> --- a/drivers/net/hp.c
> +++ b/drivers/net/hp.c
> @@ -389,7 +389,7 @@ static void __init
> hp_init_card(struct net_device *dev)
> {
> int irq = dev->irq;
> - NS8390_init(dev, 0);
> + NS8390p_init(dev, 0);
> outb_p(irqmap[irq&0x0f] | HP_RUN,
> dev->base_addr - NIC_OFFSET + HP_CONFIGURE);
> return;
> diff --git a/drivers/net/ne.c b/drivers/net/ne.c
> index 3df231d..4a8a4b1 100644
> --- a/drivers/net/ne.c
> +++ b/drivers/net/ne.c
> @@ -355,7 +355,7 @@ static int __init ne_probe1(struct net_device *dev, unsigned long ioaddr)
> }
>
> /* Read the 16 bytes of station address PROM.
> - We must first initialize registers, similar to NS8390_init(eifdev, 0).
> + We must first initialize registers, similar to NS8390p_init(eifdev, 0).
> We can't reliably read the SAPROM address without this.
> (I learned the hard way!). */
> {
> diff --git a/drivers/net/ne2.c b/drivers/net/ne2.c
> index 8f72563..332df75 100644
> --- a/drivers/net/ne2.c
> +++ b/drivers/net/ne2.c
> @@ -404,7 +404,7 @@ static int __init ne2_probe1(struct net_device *dev, int slot)
>
> /* Read the 16 bytes of station address PROM.
> We must first initialize registers, similar to
> - NS8390_init(eifdev, 0).
> + NS8390p_init(eifdev, 0).
> We can't reliably read the SAPROM address without this.
> (I learned the hard way!). */
applied
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists