lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
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 linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ