WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH 3/3] x86: make NR_IRQS build-time configurable

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [PATCH 3/3] x86: make NR_IRQS build-time configurable
From: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Date: Thu, 20 Nov 2008 13:47:58 +0000
Delivery-date: Thu, 20 Nov 2008 05:47:13 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
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@xxxxxxxxxx>

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@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-devel] [PATCH 3/3] x86: make NR_IRQS build-time configurable, Jan Beulich <=