I am successfully using a "Digital Equipment Corporation DECchip 21041[Tulip Pass 3] (rev 11)" with the de4x5 driver under linux 2.4.*. Linux 2.6.1 works fine when compiled for UP but when compiled for SMP it does lockup within milliseconds after bringing up the network interface. After enabling the NMI watchdog I received the following oops message (copied manually, case not preserved, typos possible): NMI watchdog detected lockup on cpu0, eip e29a1528, registers: cpu0: 0 eip: 0060:[<e29a1528>] not tainted eflags: 00000086 eip is at .text.lock.de4x5+0x30/0x78 [de4x5] eax: 00000040 ebx: 00000282 ecx: c03ef194 edx: 00000000 esi: df5a1200 edi: df5a1000 ebp: 0000c400 esp: c047bee0 ds: 007b es: 007b ss: 0068 process swapper (pid: 0, threadinfo=c047a000 task=c03ec980) Stack: df5a1000 df5a1200 00000001 df5a1000 000000fa e299a873 df5a1000 00001010 00001010 0000ef01 0000ff3f 00000008 00000960 df5a1200 df5a1000 000000fa c047bf50 e299955c df5a1000 00000007 e29994d0 df5a16f8 c150b520 c0127717 call trace: e299a873 dc21041_autoconf+0x223/0x630 de4x5 e299955c de4x5_ast+0x8c/0xb0 de4x5 e29994d0 de4x5_ast+0x0/0xb0 de4x5 c0127717 run_timer_softirq+0xd7/0x190 c0122fc7 do_softirq+0xc7/0xd0 c0115bfd smp_apic_timer_interrupt+0xcd/0x140 c0105000 rest_init+0x0/0x50 c0109a0e apic_timer_interrupt+0x1a/0x20 c0106cb0 default_idle+0x0/0x40 c0105000 rest_init+0x0/0x50 c0106cdc default_idle+0x2c/0x40 c0106d6b cpu_idle+0x3b/0x50 c047c8ed start_kernel+0x15d/0x170 c047c4a0 unknown_bootoption+0x0/0x120 code: f3 90 80 be 0c 02 00 00 00 7e f5 e9 6a b3 ff ff f3 90 80 bb Using the de2104x driver is not an option as it fails to receive or transmit any packets according to tcpdump and even in UP mode.
Driver is still broken in 2.6.2, does not even produce an oops message anymore.
Problem persists in current kernel 2.6.3.
Created attachment 4793 [details] Patch for de2104x driver The attached patch should get the de2104x driver working for you, which will obviate the need to fix the de4x5 driver. The de2104x driver seems to work OK in an SMP kernel. The problem with the de2104x driver has always been that some de21041 cards have defective (or even non-existent) circuitry to test if the link is down. This was never a problem for the Windows driver since the Windows drivers were normally installed with link detection off. This patch turns off link detection for twisted pair (both half and full duplex).
Thomas, did Troy's patch fix your issues? Thanks, Nish
Unfortunately I cannot tell, I have replaced that machine before the patch became available.