Jan Beulich
2008-Nov-20 13:47 UTC
[Xen-devel] [PATCH 3/3] x86: make NR_IRQS build-time configurable
While keeping the NR_IRQS default at 256 here, I think it would be a good thing to set it to a higher value to make sure no new mixing of irq and vector spaces slip in. Tested with NR_IRQS forced to 1024. Signed-off-by: Jan Beulich <jbeulich@novell.com> Index: 2008-11-20/xen/Rules.mk ==================================================================--- 2008-11-20.orig/xen/Rules.mk 2008-11-19 15:54:15.000000000 +0100 +++ 2008-11-20/xen/Rules.mk 2008-11-20 08:48:26.000000000 +0100 @@ -69,6 +69,9 @@ CFLAGS-$(frame_pointer) += -fno-omit-fra ifneq ($(max_phys_cpus),) CFLAGS-y += -DMAX_PHYS_CPUS=$(max_phys_cpus) endif +ifneq ($(max_phys_irqs),) +CFLAGS-y += -DMAX_PHYS_IRQS=$(max_phys_irqs) +endif AFLAGS-y += -D__ASSEMBLY__ Index: 2008-11-20/xen/include/asm-x86/config.h ==================================================================--- 2008-11-20.orig/xen/include/asm-x86/config.h 2008-11-05 16:54:22.000000000 +0100 +++ 2008-11-20/xen/include/asm-x86/config.h 2008-11-20 08:48:26.000000000 +0100 @@ -51,6 +51,12 @@ #define NR_CPUS 32 #endif +#ifdef MAX_PHYS_IRQS +#define NR_IRQS MAX_PHYS_IRQS +#else +#define NR_IRQS 256 +#endif + #if defined(__i386__) && (NR_CPUS > 32) #error "Maximum of 32 physical processors supported by Xen on x86_32" #endif Index: 2008-11-20/xen/include/asm-x86/domain.h ==================================================================--- 2008-11-20.orig/xen/include/asm-x86/domain.h 2008-11-19 17:37:33.000000000 +0100 +++ 2008-11-20/xen/include/asm-x86/domain.h 2008-11-20 08:48:26.000000000 +0100 @@ -236,7 +236,7 @@ struct arch_domain /* NB. protected by d->event_lock and by irq_desc[vector].lock */ int vector_pirq[NR_VECTORS]; - int pirq_vector[NR_IRQS]; + s16 pirq_vector[NR_IRQS]; /* Pseudophysical e820 map (XENMEM_memory_map). */ struct e820entry e820[3]; Index: 2008-11-20/xen/include/asm-x86/mach-default/irq_vectors.h ==================================================================--- 2008-11-20.orig/xen/include/asm-x86/mach-default/irq_vectors.h 2008-11-20 08:47:52.000000000 +0100 +++ 2008-11-20/xen/include/asm-x86/mach-default/irq_vectors.h 2008-11-20 08:48:26.000000000 +0100 @@ -30,7 +30,4 @@ #define NR_VECTORS 256 -/* Limited by number of trap vectors. */ -#define NR_IRQS NR_VECTORS - #endif /* _ASM_IRQ_VECTORS_H */ _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel