Re: Debian kernel 2.6.38-5

Finn Thain
2011-05-10T11:56:21Z

[-- Attachment #1: Type: TEXT/PLAIN, Size: 2008 bytes --]

On Tue, 10 May 2011, Geert Uytterhoeven wrote:

> On Mon, May 9, 2011 at 01:14, Finn Thain <fthain@telegraphics.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/
>
> Finn, could it also work if you remove the "#include "lib8390.c" from
> *8390.c? That would reduce code size for distro kernels, which would
> have too many copies of lib8390.c (for zorro8390, mac8390, hydra)?

ISTR that I tried the approach you suggest back when I fixed mac8390 but
couldn't make it fly but I don't recall why not.

I see that ax88796.c and ne-h8300.c also #include <lib8390.c>. In
ax88796.c I find this:

#define __ei_open ax_ei_open
#define __ei_close ax_ei_close
...
#include "lib8390.c"

which would have been better than my patch for mac8390; without this
renaming you may not be able to link a sane multi-sub-arch m68k kernel.
OTOH, I don't know if it is possible to build a single 8390.o that can
work for multiple drivers either.

BTW, ne-h8300 appears to lack the fixes in your patch and mine and so it
probably doesn't work properly either.

I'm not really sure how to tackle this; I'd like to think that we could
use 8390.o for the m68k drivers at least but I need to investigate
further.

Finn

>
> Gr{oetje,eeting}s,
>
>                         Geert