kernel/arch/x86/kernel/apic/x2apic_phys.c
.. .. @@ -58,7 +58,7 @@ 58 58 /* x2apic MSRs are special and need a special fence: */ 59 59 weak_wrmsr_fence(); 60 60 61 - local_irq_save(flags);61 + flags = hard_local_irq_save();62 62 63 63 this_cpu = smp_processor_id(); 64 64 for_each_cpu(query_cpu, mask) { .. .. @@ -67,7 +67,7 @@ 67 67 __x2apic_send_IPI_dest(per_cpu(x86_cpu_to_apicid, query_cpu), 68 68 vector, APIC_DEST_PHYSICAL); 69 69 } 70 - local_irq_restore(flags);70 + hard_local_irq_restore(flags);71 71 } 72 72 73 73 static void x2apic_send_IPI_mask(const struct cpumask *mask, int vector)