[PATCH v4] ARM: LPAE: Fix mapping in alloc_init_pte for unaligned addresses

Russell King - ARM Linux linux at arm.linux.org.uk
Wed Feb 6 07:22:13 EST 2013


On Wed, Feb 06, 2013 at 12:15:23PM +0000, Catalin Marinas wrote:
> The problem with the classic MMU is that if we have a 1MB range we can
> end up with just page mappings. The code is currently buggy since if we
> have create_mapping() for a 1MB range and later create_mapping() for a
> 4KB in the next MB, the first 1MB is removed.

And that is where we rely on people calling create_mapping() - who
will be the SoC porters - not to be idiotic and do that kind of thing.
That's worked fine for the last 10+ years so there's no need to make
the code any more complex by trying to fix something that really isn't
a problem.

I wouldn't be surprised if we have some mappings which are created by
4K page tables, and then one half of the page table is overwritten by
a section mapping - so trying to fix this _may_ be risky.



More information about the linux-arm-kernel mailing list