| To: | <linux-mips@linux-mips.org> |
|---|---|
| Subject: | MIPS Unaligned Access Question |
| From: | "Ken Hicks" <hicks@nortel.com> |
| Date: | Thu, 13 Nov 2008 11:38:51 -0500 |
| Original-recipient: | rfc822;linux-mips@linux-mips.org |
| Sender: | linux-mips-bounce@linux-mips.org |
| Thread-index: | AclFrk8tu9T1ir9+QHCv8mMEOEIW4g== |
| Thread-topic: | MIPS Unaligned Access Question |
|
Hi, This is my first post. I hope I'm following correct etiquette. Here we go.... I'm investigating why an Unaligned Access exception is generated on MIPS from an accesses which are not misaligned. The issue is that a kernel access two different unmapped addresses results in different exceptions:
I'm using a Cavium CPU with a custom linux based on 2.6.14 but the code in question hasn't changed widly in more recent kernels. I have observed this several times, so I have manually recreated the behaviour by intentionally accessing known unmapped addresses. In this first case, I forced an access to 0x0001000000000000: Oops in arch/mips/mm/fault.c::do_page_fault, line 232[#15]:
In this second case, I forced an access to 0x0010000000000000: Unhandled kernel unaligned access in
In the second case, the address is not unaligned, but it is reported as an unaligned access error. Is this behaviour related to some memory mapping? Here's copy of cat /proc/iomem:
Is this a bug, or intentional behaviour? In any case, would anyone be able to explain why the two accesses are reported differently.
Thanks,
Ken Hicks |
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | kernel dump in dev_change_flags, krispa |
|---|---|
| Next by Date: | Re: MIPS Unaligned Access Question, Maciej W. Rozycki |
| Previous by Thread: | kernel dump in dev_change_flags, krispa |
| Next by Thread: | Re: MIPS Unaligned Access Question, Maciej W. Rozycki |
| Indexes: | [Date] [Thread] [Top] [All Lists] |