Re: 8390 drivers (was: Re: Debian kernel 2.6.38-5)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 9, 2011 at 23:32, Christian T. Steigies <cts@xxxxxxxxxx> wrote:
On Mon, May 09, 2011 at 10:38:18PM +0200, Geert Uytterhoeven wrote:
On Mon, May 9, 2011 at 22:25, Christian T. Steigies <cts@xxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxx> 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?

zorro8390.mod.c

That's a generated file, so you can ignore it.

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?

I did not change that and it still works, modprobe zorro8390 did not load
8390. The speed is rather slow, though, 10kbit/sec seems to be the max
speed. I have not been able to log in via ssh yet, maybe after it has
finished downloading packages.

Yeah, speed depends on CPU type and motherboard/CPU interface.

Gr{oetje,eeting}s,

            Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

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 linux-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux