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 for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <BANLkTimG+3jqLiLaA_NVEpGg3LFtvK4bQQ@mail.gmail.com>
Date:	Mon, 9 May 2011 22:38:18 +0200
From:	Geert Uytterhoeven <geert@...ux-m68k.org>
To:	"Christian T. Steigies" <cts@...ian.org>
Cc:	Finn Thain <fthain@...egraphics.com.au>,
	Thorsten Glaser <tg@...bsd.de>, linux-m68k@...r.kernel.org,
	Stephen Hemminger <shemminger@...tta.com>,
	"David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org
Subject: 8390 drivers (was: Re: Debian kernel 2.6.38-5)

On Mon, May 9, 2011 at 22:25, Christian T. Steigies <cts@...ian.org> wrote:
> On Mon, May 09, 2011 at 09:16:16AM +0200, Geert Uytterhoeven wrote:
>> On Mon, May 9, 2011 at 01:14, Finn Thain <fthain@...egraphics.com.au> wrote:
>> > On Sun, 8 May 2011, Christian T. Steigies wrote:
>> >> PS 2.6.28 did not boot: kernel too old. When was TLS introduced? I'll try to
>> >> apply the patch you mentioned in your other message.
>> >
>> > I sometimes test network cards with busybox. It can be built without
>> > linking in glibc and doesn't need TLS.
>> >
>> >
>> >> [  130.870000] eth0: trigger_send() called with the transmitter busy.
>> >> [  132.240000] ------------[ cut here ]------------
>> >> [  132.240000] WARNING: at net/sched/sch_generic.c:256 dev_watchdog+0x1ac/0x1cc()
>> >> [  132.250000] NETDEV WATCHDOG: eth0 (): transmit queue 0 timed out
>> >
>> > Looks a lot like this problem:
>> >
>> > http://patchwork.ozlabs.org/patch/27774/
>>
>> Yeah, that's a very likely culprit. Thx!
>
> I applied the following patch and it works! apt-get update that is, there is
> no sshd on this freshly installed system yet...
>
> I also changed this line to have 4 underscores at the beginning:
>
>        { 0xec940559, "____alloc_ei_netdev" },

In which file is that?

> it does not show up in git diff, so I am not sure if this is a leftover from
> a previous checkout, or if it is also needed. And if it is needed, if it
> should be two underscores or four or none, and if so why or why not...
> Looking at the other drivers, there does not seem to be a lot of consistency?

>From this, I guess hydra and ne-h8300 are also affected, as they
include lib8390.c
theirselves and are linked with 8390.o?

> diff --git a/drivers/net/zorro8390.c b/drivers/net/zorro8390.c
> index b78a38d9..8c7c522 100644
> --- a/drivers/net/zorro8390.c
> +++ b/drivers/net/zorro8390.c
> @@ -126,7 +126,7 @@ static int __devinit zorro8390_init_one(struct zorro_dev *z,
>
>     board = z->resource.start;
>     ioaddr = board+cards[i].offset;
> -    dev = alloc_ei_netdev();
> +    dev = ____alloc_ei_netdev(0);
>     if (!dev)
>        return -ENOMEM;
>     if (!request_mem_region(ioaddr, NE_IO_EXTENT*2, DRV_NAME)) {
> @@ -146,15 +146,15 @@ static int __devinit zorro8390_init_one(struct zorro_dev *z,
>  static const struct net_device_ops zorro8390_netdev_ops = {
>        .ndo_open               = zorro8390_open,
>        .ndo_stop               = zorro8390_close,
> -       .ndo_start_xmit         = ei_start_xmit,
> -       .ndo_tx_timeout         = ei_tx_timeout,
> -       .ndo_get_stats          = ei_get_stats,
> -       .ndo_set_multicast_list = ei_set_multicast_list,
> +       .ndo_start_xmit         = __ei_start_xmit,
> +       .ndo_tx_timeout         = __ei_tx_timeout,
> +       .ndo_get_stats          = __ei_get_stats,
> +       .ndo_set_multicast_list = __ei_set_multicast_list,
>        .ndo_validate_addr      = eth_validate_addr,
>        .ndo_set_mac_address    = eth_mac_addr,
>        .ndo_change_mtu         = eth_change_mtu,
>  #ifdef CONFIG_NET_POLL_CONTROLLER
> -       .ndo_poll_controller    = ei_poll,
> +       .ndo_poll_controller    = __ei_poll,
>  #endif
>  };

And 8390.o can be removed from drivers/net/Makefile?

Gr{oetje,eeting}s,

                        Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
--
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

Powered by Openwall GNU/*/Linux Powered by OpenVZ