Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 fixes from Peter Anvin:
"Two very small changes: one fix for the vSMP Foundation platform, and
one to help LLVM not choke on options it doesn't understand (although
it probably should)"

* 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86/vsmp: Fix irq routing
x86: LLVMLinux: Wrap -mno-80387 with cc-option

+13 -2
+3 -1
arch/x86/Makefile
··· 83 83 KBUILD_CFLAGS += -m64 84 84 85 85 # Don't autogenerate traditional x87, MMX or SSE instructions 86 - KBUILD_CFLAGS += -mno-mmx -mno-sse -mno-80387 -mno-fp-ret-in-387 86 + KBUILD_CFLAGS += -mno-mmx -mno-sse 87 + KBUILD_CFLAGS += $(call cc-option,-mno-80387) 88 + KBUILD_CFLAGS += $(call cc-option,-mno-fp-ret-in-387) 87 89 88 90 # Use -mpreferred-stack-boundary=3 if supported. 89 91 KBUILD_CFLAGS += $(call cc-option,-mpreferred-stack-boundary=3)
+10 -1
arch/x86/kernel/vsmp_64.c
··· 26 26 27 27 #define TOPOLOGY_REGISTER_OFFSET 0x10 28 28 29 + /* Flag below is initialized once during vSMP PCI initialization. */ 30 + static int irq_routing_comply = 1; 31 + 29 32 #if defined CONFIG_PCI && defined CONFIG_PARAVIRT 30 33 /* 31 34 * Interrupt control on vSMPowered systems: ··· 104 101 #ifdef CONFIG_SMP 105 102 if (cap & ctl & BIT(8)) { 106 103 ctl &= ~BIT(8); 104 + 105 + /* Interrupt routing set to ignore */ 106 + irq_routing_comply = 0; 107 + 107 108 #ifdef CONFIG_PROC_FS 108 109 /* Don't let users change irq affinity via procfs */ 109 110 no_irq_affinity = 1; ··· 225 218 { 226 219 /* need to update phys_pkg_id */ 227 220 apic->phys_pkg_id = apicid_phys_pkg_id; 228 - apic->vector_allocation_domain = fill_vector_allocation_domain; 221 + 222 + if (!irq_routing_comply) 223 + apic->vector_allocation_domain = fill_vector_allocation_domain; 229 224 } 230 225 231 226 void __init vsmp_init(void)