linux-mips-fnet
[Top] [All Lists]

trap handler for unaligned memory read/write

To: linux-mips@oss.sgi.com, linux-mips@fnet.fr
Subject: trap handler for unaligned memory read/write
From: Jun Sun <jsun@mvista.com>
Date: Fri, 15 Sep 2000 14:09:44 -0700
Sender: jsun@hermes.mvista.com
I was trying to run some PCI ether drivers and always got bus error, at
least when I use ipconfig bootp code.

However, the problem seems to be generic.

Ethernet device writes a whole packet in the memory.  Driver and network
stack code often directly dereference a pointer in to the packet. 
However, the ether header is 14 byte long.  If you align packet from the
beginning, then IP header will be off-aligned.

Any suggestions?

If this is a valid problem, I think the long term solution should be in
network code, which should not assume they can dereference on an
unaligned address.

For short-term solutions, we can have trap handler that supports the
unaligned read/write.  Does anybody know if there is such a trap handler
for MIPS?

Thanks.

Jun

<Prev in Thread] Current Thread [Next in Thread>