]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/x86/mm/init.c
x86, mm: Move init_gbpages() out of setup.c
[karo-tx-linux.git] / arch / x86 / mm / init.c
index 3cadf1013cead77e65b6920e587622ddfe1e783d..8168bf8fcda7136fb40b8bed98d1fb64e822a0dd 100644 (file)
@@ -98,6 +98,16 @@ int direct_gbpages
 #endif
 ;
 
+static void __init init_gbpages(void)
+{
+#ifdef CONFIG_X86_64
+       if (direct_gbpages && cpu_has_gbpages)
+               printk(KERN_INFO "Using GB pages for direct mapping\n");
+       else
+               direct_gbpages = 0;
+#endif
+}
+
 struct map_range {
        unsigned long start;
        unsigned long end;
@@ -108,6 +118,8 @@ static int page_size_mask;
 
 static void __init probe_page_size_mask(void)
 {
+       init_gbpages();
+
 #if !defined(CONFIG_DEBUG_PAGEALLOC) && !defined(CONFIG_KMEMCHECK)
        /*
         * For CONFIG_DEBUG_PAGEALLOC, identity mapping will use small pages.