x86, mm: Use new pagetable helpers in try_preserve_large_page()

try_preserve_large_page() can be slightly simplified by using
the new page_level_*() helpers.  This also moves the 'level'
over to the new pg_level enum type.

Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
Link: http://lkml.kernel.org/r/20130122212432.14F3D993@kernel.stglabs.ibm.com
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
This commit is contained in:
Dave Hansen 2013-01-22 13:24:32 -08:00 committed by H. Peter Anvin
parent 4cbeb51b86
commit f3c4fbb68e
1 changed files with 4 additions and 7 deletions

View File

@ -396,7 +396,7 @@ try_preserve_large_page(pte_t *kpte, unsigned long address,
pte_t new_pte, old_pte, *tmp;
pgprot_t old_prot, new_prot, req_prot;
int i, do_split = 1;
unsigned int level;
enum pg_level level;
if (cpa->force_split)
return 1;
@ -412,15 +412,12 @@ try_preserve_large_page(pte_t *kpte, unsigned long address,
switch (level) {
case PG_LEVEL_2M:
psize = PMD_PAGE_SIZE;
pmask = PMD_PAGE_MASK;
break;
#ifdef CONFIG_X86_64
case PG_LEVEL_1G:
psize = PUD_PAGE_SIZE;
pmask = PUD_PAGE_MASK;
break;
#endif
psize = page_level_size(level);
pmask = page_level_mask(level);
break;
default:
do_split = -EINVAL;
goto out_unlock;