[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] x86: reduce EOI stack's size in per-cpu area.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1264521232 0
# Node ID 8e1385f1e8a7fcb9d686cf31d5a74d988e325cd4
# Parent  58b45bb15137c450b1616935967cbc7e293bf521
x86: reduce EOI stack's size in per-cpu area.

Only dynamic vectors uses EOI stack, so the size
can be safely reducd to NR_DYNAMIC_VECTORS.

Signed-off-by : Xiantao Zhang <xiantao.zhang@xxxxxxxxx>
---
 xen/arch/x86/irq.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff -r 58b45bb15137 -r 8e1385f1e8a7 xen/arch/x86/irq.c
--- a/xen/arch/x86/irq.c        Tue Jan 26 15:53:01 2010 +0000
+++ b/xen/arch/x86/irq.c        Tue Jan 26 15:53:52 2010 +0000
@@ -753,8 +753,8 @@ struct pending_eoi {
     u32 vector:8; /* vector awaiting EOI */
 };
 
-static DEFINE_PER_CPU(struct pending_eoi, pending_eoi[NR_VECTORS]);
-#define pending_eoi_sp(p) ((p)[NR_VECTORS-1].vector)
+static DEFINE_PER_CPU(struct pending_eoi, pending_eoi[NR_DYNAMIC_VECTORS]);
+#define pending_eoi_sp(p) ((p)[NR_DYNAMIC_VECTORS-1].vector)
 
 static inline void set_pirq_eoi(struct domain *d, unsigned int irq)
 {
@@ -816,7 +816,7 @@ static void __do_IRQ_guest(int irq)
     {
         sp = pending_eoi_sp(peoi);
         ASSERT((sp == 0) || (peoi[sp-1].vector < vector));
-        ASSERT(sp < (NR_VECTORS-1));
+        ASSERT(sp < (NR_DYNAMIC_VECTORS-1));
         peoi[sp].irq = irq;
         peoi[sp].vector = vector;
         peoi[sp].ready = 0;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.