]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge branch 'x86/cpu' into x86/mm, before applying dependent patch
authorIngo Molnar <mingo@kernel.org>
Thu, 30 Mar 2017 07:07:54 +0000 (09:07 +0200)
committerIngo Molnar <mingo@kernel.org>
Thu, 30 Mar 2017 07:07:54 +0000 (09:07 +0200)
Signed-off-by: Ingo Molnar <mingo@kernel.org>
arch/x86/include/asm/processor.h
arch/x86/kernel/cpu/proc.c
arch/x86/kernel/setup.c
arch/x86/mm/init_32.c
arch/x86/xen/enlighten.c

index 05319c60b3db3d97ebfd44d19e0adee903fb5273..3cada998a402a7893ffd2fc709916f4fcbc3f970 100644 (file)
@@ -80,7 +80,7 @@ extern u16 __read_mostly tlb_lld_1g[NR_INFO];
 
 /*
  *  CPU type and hardware bug flags. Kept separately for each CPU.
- *  Members of this structure are referenced in head.S, so think twice
+ *  Members of this structure are referenced in head_32.S, so think twice
  *  before touching them. [mj]
  */
 
@@ -89,14 +89,7 @@ struct cpuinfo_x86 {
        __u8                    x86_vendor;     /* CPU vendor */
        __u8                    x86_model;
        __u8                    x86_mask;
-#ifdef CONFIG_X86_32
-       char                    wp_works_ok;    /* It doesn't on 386's */
-
-       /* Problems on some 486Dx4's and old 386's: */
-       char                    rfu;
-       char                    pad0;
-       char                    pad1;
-#else
+#ifdef CONFIG_X86_64
        /* Number of 4K pages in DTLB/ITLB combined(in pages): */
        int                     x86_tlbsize;
 #endif
index 18ca99f2798b16443291827269389bf0ad52bf94..6df621ae62a7c00cb4f95dbf5c41ec83e5397f71 100644 (file)
@@ -31,14 +31,13 @@ static void show_cpuinfo_misc(struct seq_file *m, struct cpuinfo_x86 *c)
                   "fpu\t\t: %s\n"
                   "fpu_exception\t: %s\n"
                   "cpuid level\t: %d\n"
-                  "wp\t\t: %s\n",
+                  "wp\t\t: yes\n",
                   static_cpu_has_bug(X86_BUG_FDIV) ? "yes" : "no",
                   static_cpu_has_bug(X86_BUG_F00F) ? "yes" : "no",
                   static_cpu_has_bug(X86_BUG_COMA) ? "yes" : "no",
                   static_cpu_has(X86_FEATURE_FPU) ? "yes" : "no",
                   static_cpu_has(X86_FEATURE_FPU) ? "yes" : "no",
-                  c->cpuid_level,
-                  c->wp_works_ok ? "yes" : "no");
+                  c->cpuid_level);
 }
 #else
 static void show_cpuinfo_misc(struct seq_file *m, struct cpuinfo_x86 *c)
index 56b1177155db0c9bce4ec444464d677341ba83fc..1302c47c5ce11efb71f881b376dbbcee75232009 100644 (file)
@@ -173,14 +173,11 @@ static struct resource bss_resource = {
 
 
 #ifdef CONFIG_X86_32
-/* cpu data as detected by the assembly code in head.S */
-struct cpuinfo_x86 new_cpu_data = {
-       .wp_works_ok = -1,
-};
+/* cpu data as detected by the assembly code in head_32.S */
+struct cpuinfo_x86 new_cpu_data;
+
 /* common cpu data for all cpus */
-struct cpuinfo_x86 boot_cpu_data __read_mostly = {
-       .wp_works_ok = -1,
-};
+struct cpuinfo_x86 boot_cpu_data __read_mostly;
 EXPORT_SYMBOL(boot_cpu_data);
 
 unsigned int def_to_bigsmp;
index 5ed3c141bbd5cf43dc1725f24ad1560622621ea2..7116a727fd5ad298ecfc02a6609cbe63c8f0d2c3 100644 (file)
@@ -726,15 +726,17 @@ void __init paging_init(void)
  */
 static void __init test_wp_bit(void)
 {
+       int wp_works_ok;
+
        printk(KERN_INFO
   "Checking if this processor honours the WP bit even in supervisor mode...");
 
        /* Any page-aligned address will do, the test is non-destructive */
        __set_fixmap(FIX_WP_TEST, __pa(&swapper_pg_dir), PAGE_KERNEL_RO);
-       boot_cpu_data.wp_works_ok = do_test_wp_bit();
+       wp_works_ok = do_test_wp_bit();
        clear_fixmap(FIX_WP_TEST);
 
-       if (!boot_cpu_data.wp_works_ok) {
+       if (!wp_works_ok) {
                printk(KERN_CONT "No.\n");
                panic("Linux doesn't support CPUs with broken WP.");
        } else {
@@ -821,8 +823,7 @@ void __init mem_init(void)
        BUG_ON(VMALLOC_START                            >= VMALLOC_END);
        BUG_ON((unsigned long)high_memory               > VMALLOC_START);
 
-       if (boot_cpu_data.wp_works_ok < 0)
-               test_wp_bit();
+       test_wp_bit();
 }
 
 #ifdef CONFIG_MEMORY_HOTPLUG
index 4951fcf95143cf5c3fee1c4f27e3b46b37bd50a3..6efa0cc425a22f405fd86ff98e10164a8be51050 100644 (file)
@@ -1595,7 +1595,6 @@ asmlinkage __visible void __init xen_start_kernel(void)
        /* set up basic CPUID stuff */
        cpu_detect(&new_cpu_data);
        set_cpu_cap(&new_cpu_data, X86_FEATURE_FPU);
-       new_cpu_data.wp_works_ok = 1;
        new_cpu_data.x86_capability[CPUID_1_EDX] = cpuid_edx(1);
 #endif