Problems with Trantor 128 in 2.1.xx

Daniel Kiracofe (drk@gurulink.com)
Thu, 27 Aug 1998 05:17:48 +0000 ( )


My SCSI host adapter blew up on my recently, so I dug a Trantor 128 out of
mothballs to use until I could get a better one. But, kernel 2.1.11[78]
(and 2.1.107) gave me an oops something like this:

Unable to handle kernel paging request at virtual address 000cdd20
current->tss.cr3 = 00101000, %cr3=00101000
*pde=00000000
Oops: 0002
CPU: 0
EIP: 0010:[<c01c040d>]
EFLAGS: 00010246
eax: c01b8828 ebx: 00000002 ecx: 00000080 edx: c0005cf4
esi: c0005c80 edi: 000cc000 ebp: 00000000 esp: c0093f2c
ds: 0018 es: 0018 ss: 0018
Process swapper (pid: 1 process nr: 1 stackpage: c009300)
Stack:
Call Trace (I didn't write these two down. I can get them if needed)
Code: c6 87 20 1d 00 00 00 c6 87 40 1d 00 00 00 c6 87 60 1d 00 00

The EIP corresponds to an address within NCR5380_init() (in
linux/drivers/scsi/NCR5380.c).
The board was set to use address cc000. If I change the dip switches to
another address (dc000, etc), the edi register changes to that address,
and the address of the page fault changes, but everything else stays
the same.
The Code: disassembles to this:
movb $0x0,0x1d20(%edi)
movb $0x0,0x1d40(%edi)
movb $0x0,0x1d60(%edi)

Which corresponds to this in the C source:

NCR5380_write(INITIATOR_COMMAND_REG, ICR_BASE);
NCR5380_write(MODE_REG, MR_BASE);
NCR5380_write(TARGET_COMMAND_REG, 0);

FYI, NCR5380_write is a macro defined in t128.h
I tried this board with a 2.0.30 kernel, and it seems to be detected
ok. The driver code in 2.0.30 and 2.1.117 looks about the same. No
changes that should cause this bug anyway... It looks to me like
something in the memory management code changed that broke this driver,
but no one noticed. I wouldn't be surprised, this card is 8 years old
and probably few people use them anymore.
I can't really debug this any further, I just have no idea what changed
from 2.0 to 2.1. Anyone have any thoughts? (If it matters, this is a
Cyrix 6x86, gcc is 2.7.2.3) TIA...

/* Daniel */

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html