Re: ARM: add support to dump the kernel page tables

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Oct 24, 2013 at 05:25:43PM +0100, Steve Capper wrote:
> Hi,
> for LPAE:
> I want pmd_large to return true for all non-zero pmds that have bit #1
> clear.
>  
> Clearing bit #0 of a pmd produces a faulting entry, and this is how
> PROT_NONE protection is enforced by huge pages.
> 
> pmd_sect will return false for non-zero pmds that have both bit #0 and
> bit #1 clear, thus will return false for some huge pages.

Well, consider that we want to move this code out of arch/arm and into
generic code - when that happens architectures should just have to
provide some data (the data to interpret the bitfields and memory
sections) to this code.

Therefore, we need pmd_large() to have the same semantics across all
architectures, and we can't use ARMs pmd_sect() - ARMs sections have
no meaning on other architectures, and the established macro which
should return true for large pages is pmd_large().

If there's the possibility for pmd_none(pmd) && pmd_large(pmd) to
return true, but the entry contains something which is not a section
descriptor, and ARM will be incompatible with other stuff and it will
stand in the way of moving this to generic code.

Really, I don't think ARM can be different with its definition of
pmd_large() even though generic code does not yet make use of this
macro.
--
To unsubscribe from this list: send the line "unsubscribe linux-arch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux