Merge branch 'x86-tracing-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[firefly-linux-kernel-4.4.55.git] / arch / x86 / kernel / cpu / common.c
index a4a07c0acb1f2e0428055b00c709ced475c41d9d..548bd039784e631570a7628137d16cb8213ec411 100644 (file)
@@ -1072,8 +1072,8 @@ __setup("clearcpuid=", setup_disablecpuid);
 
 #ifdef CONFIG_X86_64
 struct desc_ptr idt_descr = { NR_VECTORS * 16 - 1, (unsigned long) idt_table };
-struct desc_ptr nmi_idt_descr = { NR_VECTORS * 16 - 1,
-                                   (unsigned long) nmi_idt_table };
+struct desc_ptr debug_idt_descr = { NR_VECTORS * 16 - 1,
+                                   (unsigned long) debug_idt_table };
 
 DEFINE_PER_CPU_FIRST(union irq_stack_union,
                     irq_stack_union) __aligned(PAGE_SIZE);
@@ -1149,20 +1149,20 @@ int is_debug_stack(unsigned long addr)
                 addr > (__get_cpu_var(debug_stack_addr) - DEBUG_STKSZ));
 }
 
-static DEFINE_PER_CPU(u32, debug_stack_use_ctr);
+DEFINE_PER_CPU(u32, debug_idt_ctr);
 
 void debug_stack_set_zero(void)
 {
-       this_cpu_inc(debug_stack_use_ctr);
-       load_idt((const struct desc_ptr *)&nmi_idt_descr);
+       this_cpu_inc(debug_idt_ctr);
+       load_current_idt();
 }
 
 void debug_stack_reset(void)
 {
-       if (WARN_ON(!this_cpu_read(debug_stack_use_ctr)))
+       if (WARN_ON(!this_cpu_read(debug_idt_ctr)))
                return;
-       if (this_cpu_dec_return(debug_stack_use_ctr) == 0)
-               load_idt((const struct desc_ptr *)&idt_descr);
+       if (this_cpu_dec_return(debug_idt_ctr) == 0)
+               load_current_idt();
 }
 
 #else  /* CONFIG_X86_64 */
@@ -1258,7 +1258,7 @@ void __cpuinit cpu_init(void)
        switch_to_new_gdt(cpu);
        loadsegment(fs, 0);
 
-       load_idt((const struct desc_ptr *)&idt_descr);
+       load_current_idt();
 
        memset(me->thread.tls_array, 0, GDT_ENTRY_TLS_ENTRIES * 8);
        syscall_init();
@@ -1335,7 +1335,7 @@ void __cpuinit cpu_init(void)
        if (cpu_has_vme || cpu_has_tsc || cpu_has_de)
                clear_in_cr4(X86_CR4_VME|X86_CR4_PVI|X86_CR4_TSD|X86_CR4_DE);
 
-       load_idt(&idt_descr);
+       load_current_idt();
        switch_to_new_gdt(cpu);
 
        /*