Messages in this thread Patch in this message | | | From | Yinghai Lu <> | Subject | [PATCH] x86: fix probe_nr_irqs for xen | Date | Thu, 21 Aug 2008 13:10:09 -0700 |
| |
otherwise Xen is _completely_ unusable with 5 or more VCPUs. ( when !CONFIG_HAVE_SPARSE_IRQ)
based on Alex's patch
also add +1 offset after redir_entries
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com> Cc: Alex Nixon <alex.nixon@citrix.com>
Index: linux-2.6/arch/x86/kernel/io_apic.c =================================================================== --- linux-2.6.orig/arch/x86/kernel/io_apic.c +++ linux-2.6/arch/x86/kernel/io_apic.c @@ -3625,16 +3625,21 @@ int __init probe_nr_irqs(void) { int idx; int nr = 0; +#ifndef CONFIG_XEN + int nr_min = 32; +#else + int nr_min = NR_IRQS; +#endif for (idx = 0; idx < nr_ioapics; idx++) - nr += io_apic_get_redir_entries(idx); + nr += io_apic_get_redir_entries(idx) + 1; /* double it for hotplug and msi and nmi */ nr <<= 1; /* something wrong ? */ - if (nr < 32) - nr = 32; + if (nr < nr_min) + nr = nr_min; return nr; }
| |