ARM page 0 set for page fault
Krzysztof Halasa
khc at pm.waw.pl
Sun Apr 22 14:38:50 EDT 2012
Hi,
I'm trying to port my old IXP4xx (Intel XScale ARM big-endian mostly)
patches to the current Barebox. Noticed the page #0 (virtual = physical
addresses 0 - 0x1FFF, or the first 4 KiB of RAM) is not present:
commit abcf935e
Author: Sascha Hauer <s.hauer at pengutronix.de>
Date: Sun Aug 7 19:00:56 2011 +0200
ARM mmu: use high vectors if possible
Using high vectors allows us to map a faulting zero page to
catch NULL pointer dereferences.
Unfortunately this causes "md" (memory dump) etc. to fail (also
executing Linux kernel fails since the tags are located at 0x100 -
should I relocate them?).
Should I do it differently, e.g. access RAM through an alias (IXP4xx has
RAM aliased all over the place, one could also use MMU tables for this)
so that the page fault only occurs on internal, not user-visible
accesses (= users should not be able to access the first virtual page,
even it they think the do)?
--
Krzysztof Halasa
More information about the barebox
mailing list