Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Wed, 27 Feb 2013 03:45:29 +0000 (19:45 -0800)]
Pull x86 fixes from Ingo Molnar.

* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/mm/pageattr: Prevent PSE and GLOABL leftovers to confuse pmd/pte_present and pmd_huge
  Revert "x86, mm: Make spurious_fault check explicitly check explicitly check the PRESENT bit"
  x86/mm/numa: Don't check if node is NUMA_NO_NODE
  x86, efi: Make "noefi" really disable EFI runtime serivces
  x86/apic: Fix parsing of the 'lapic' cmdline option

1  2 
arch/x86/mm/numa.c
arch/x86/mm/pageattr.c
arch/x86/platform/efi/efi.c

@@@ -97,11 -97,10 +97,10 @@@ void numa_set_node(int cpu, int node
  #endif
        per_cpu(x86_cpu_to_node_map, cpu) = node;
  
-       if (node != NUMA_NO_NODE)
-               set_cpu_numa_node(cpu, node);
+       set_cpu_numa_node(cpu, node);
  }
  
 -void __cpuinit numa_clear_node(int cpu)
 +void numa_clear_node(int cpu)
  {
        numa_set_node(cpu, NUMA_NO_NODE);
  }
@@@ -570,11 -581,17 +602,11 @@@ int __split_large_page(pte_t *kpte, uns
         */
        pfn = pte_pfn(*kpte);
        for (i = 0; i < PTRS_PER_PTE; i++, pfn += pfninc)
-               set_pte(&pbase[i], pfn_pte(pfn, ref_prot));
+               set_pte(&pbase[i], pfn_pte(pfn, canon_pgprot(ref_prot)));
  
 -      if (address >= (unsigned long)__va(0) &&
 -              address < (unsigned long)__va(max_low_pfn_mapped << PAGE_SHIFT))
 -              split_page_count(level);
 -
 -#ifdef CONFIG_X86_64
 -      if (address >= (unsigned long)__va(1UL<<32) &&
 -              address < (unsigned long)__va(max_pfn_mapped << PAGE_SHIFT))
 +      if (pfn_range_is_mapped(PFN_DOWN(__pa(address)),
 +                              PFN_DOWN(__pa(address)) + 1))
                split_page_count(level);
 -#endif
  
        /*
         * Install the new, split up pagetable.
Simple merge