From 10caf61a498c71da440e9e80a5a17225c0021454 Mon Sep 17 00:00:00 2001 From: Yinghai Lu Date: Tue, 4 Aug 2009 08:59:59 -0700 Subject: [PATCH] --- yaml --- r: 156559 b: refs/heads/master c: 087d7e56deffb611a098e7e257388a41edbeef1f h: refs/heads/master i: 156557: 71e3de326b2db02983e03be7f2362b7975e9ace8 156555: 2ce19377f08b00240552bbd58882b17fe0d5ab83 156551: 4d64a9fc4166e2e6863891f78425fc53287ed51d 156543: d6d4f46ab2fe6c849dfbe14c6f14d51580810783 v: v3 --- [refs] | 2 +- trunk/arch/x86/kernel/apic/x2apic_cluster.c | 8 +++++--- trunk/arch/x86/kernel/apic/x2apic_phys.c | 8 +++++--- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/[refs] b/[refs] index 2897bbc77d8d..2578bbdbd7dd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7d5b005652bc5ae3e1e0efc53fd0e25a643ec506 +refs/heads/master: 087d7e56deffb611a098e7e257388a41edbeef1f diff --git a/trunk/arch/x86/kernel/apic/x2apic_cluster.c b/trunk/arch/x86/kernel/apic/x2apic_cluster.c index 2ed4e2bb3b32..a5371ec36776 100644 --- a/trunk/arch/x86/kernel/apic/x2apic_cluster.c +++ b/trunk/arch/x86/kernel/apic/x2apic_cluster.c @@ -17,11 +17,13 @@ static int x2apic_acpi_madt_oem_check(char *oem_id, char *oem_table_id) return x2apic_enabled(); } -/* Start with all IRQs pointing to boot CPU. IRQ balancing will shift them. */ - +/* + * need to use more than cpu 0, because we need more vectors when + * MSI-X are used. + */ static const struct cpumask *x2apic_target_cpus(void) { - return cpumask_of(0); + return cpu_online_mask; } /* diff --git a/trunk/arch/x86/kernel/apic/x2apic_phys.c b/trunk/arch/x86/kernel/apic/x2apic_phys.c index 0b631c6a2e00..a8989aadc99a 100644 --- a/trunk/arch/x86/kernel/apic/x2apic_phys.c +++ b/trunk/arch/x86/kernel/apic/x2apic_phys.c @@ -27,11 +27,13 @@ static int x2apic_acpi_madt_oem_check(char *oem_id, char *oem_table_id) return 0; } -/* Start with all IRQs pointing to boot CPU. IRQ balancing will shift them. */ - +/* + * need to use more than cpu 0, because we need more vectors when + * MSI-X are used. + */ static const struct cpumask *x2apic_target_cpus(void) { - return cpumask_of(0); + return cpu_online_mask; } static void x2apic_vector_allocation_domain(int cpu, struct cpumask *retmask)