x86, mm: Add check before clear pte above max_low_pfn on 32bit
authorYinghai Lu <yinghai@kernel.org>
Sat, 17 Nov 2012 03:39:11 +0000 (19:39 -0800)
committerH. Peter Anvin <hpa@linux.intel.com>
Sat, 17 Nov 2012 19:59:39 +0000 (11:59 -0800)
commit11ed9e927d573d78beda6e6a166612666ae97064
treea45dc48e2b113027fba23c31fb666aa48fa74c64
parentc8dcdb9ce463ad4a660099a74a850f4f6fc81c41
x86, mm: Add check before clear pte above max_low_pfn on 32bit

During test patch that adjust page_size_mask to map small range ram with
big page size, found page table is setup wrongly for 32bit. And
native_pagetable_init wrong clear pte for pmd with large page support.

1. add more comments about why we are expecting pte.

2. add BUG checking, so next time we could find problem earlier
   when we mess up page table setup again.

3. max_low_pfn is not included boundary for low memory mapping.
   We should check from max_low_pfn instead of +1.

4. add print out when some pte really get cleared, or we should use
   WARN() to find out why above max_low_pfn get mapped? so we could
   fix it.

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Link: http://lkml.kernel.org/r/1353123563-3103-35-git-send-email-yinghai@kernel.org
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
arch/x86/mm/init_32.c