by Pekka Savola[permalink] [raw]
Using RHL 2.2.16-3 kernel on i686.
Raising MAX_UNITS define from 8 to 16 or 32 in net drivers (tested
tulip.c) causes reproducible oops. The latest Don Becker driver also does
this. Using DFE-570TX quad ethernet cards.
So, why change MAX_UNITS? Interfaces 9-> can't be passed options=,
full_duplex= or similar parameters otherwise. The actual interfaces
should work in autonegotiation though.
I've gotten this crash every time. It can be done as follows:
1) recompile a new tulip module with changed MAX_UNITS.
2) insmod the module
3) take one interface up, with e.g. ifup eth0. [note: traffic doesn't go
4) try to take the interface down, with e.g. ifconfig eth0
5) watch oops in your syslog.
Previous message on syslog was 'Trying to free free IRQ9'.
Unable to handle kernel paging request at virtual address 0000109f
current->tss.cr3 = 01d69000, %%cr3 = 01d69000
*pde = 00000000
eax: c4056f00 ebx: 00001043 ecx: 00000246 edx: 00000000
esi: 00001043 edi: c38cc5a0 ebp: c103deb4 esp: c103deac
ds: 0018 es: 0018 ss: 0018
Process ifconfig (pid: 1924, process nr: 7, stackpage=c103d000)
Stack: 00000000 c38cc480 00001042 c014fe92 c38cc5a0 00001043 c38cc5a0 c0150980
c38cc5a0 c29c6300 00001042 c29c6324 c103df40 c0170f9c c38cc5a0 00001042
00008914 00008914 bffff9f4 c2671740 00008913 00000000 c103df40 c0150ee9
Call Trace: [dev_close+78/156] [dev_change_flags+80/268] [devinet_ioctl+620/1404] [dev_ioctl+337/792] [inet_ioctl+294/412] [free_pages+36/40] [sock_ioctl+29/36]
Code: 8b 56 5c 31 c0 0f ab 46 24 19 c0 85 c0 74 29 a1 80 47 21 c0
Note! EIP shows de4x5 for some reason. Please note that de4x5 driver
also "works" with this card. The driver is _really_ buggy with it though.
With Don Becker drivers the output is about the same; EIP is
__insmod_tulip_S and Call Trace: begins with dev_deactivate.
Any ideas? _Should_ raising MAX_UNITS work as I described or are there
any known problems with it?
Pekka Savola "Tell me of difficulties surmounted,
[email protected] not those you stumble over and fall"
by Keith Owens[permalink] [raw]
On Thu, 23 Nov 2000 23:09:18 +0200 (EET),
Pekka Savola <[email protected]> wrote:
>Note! EIP shows de4x5 for some reason. Please note that de4x5 driver
Because klogd tried to convert the oops and made a complete mess of it.
Always start klogd as "klogd -x" and run the oops through ksymoops
instead of letting the horribly broken klogd stamp on the report.