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

[Xen-changelog] [xen-unstable] x86 hpet: fix irq_vector[] update of c/s 19419



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1238583195 -3600
# Node ID 443b3bb740e251413f30843d98e1e0a60f162e50
# Parent  79f734040a8372ec9d0a93e76b0adeda7c141097
x86 hpet: fix irq_vector[] update of c/s 19419

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
---
 xen/arch/x86/hpet.c |   16 ++++++----------
 1 files changed, 6 insertions(+), 10 deletions(-)

diff -r 79f734040a83 -r 443b3bb740e2 xen/arch/x86/hpet.c
--- a/xen/arch/x86/hpet.c       Wed Apr 01 11:47:59 2009 +0100
+++ b/xen/arch/x86/hpet.c       Wed Apr 01 11:53:15 2009 +0100
@@ -343,20 +343,16 @@ static int hpet_setup_msi_irq(unsigned i
 
 static int hpet_assign_irq(struct hpet_event_channel *ch)
 {
-    unsigned int vector;
-
-    vector = assign_irq_vector(AUTO_ASSIGN_IRQ);
-    if ( !vector )
-        return -EINVAL;
-
-    irq_vector[vector] = vector;
-    vector_irq[vector] = vector;
+    int vector;
+
+    if ( (vector = assign_irq_vector(AUTO_ASSIGN_IRQ)) < 0 )
+        return vector;
+
     vector_channel[vector] = ch - &hpet_events[0];
 
     if ( hpet_setup_msi_irq(vector) )
     {
-        irq_vector[vector] = 0;
-        vector_irq[vector] = FREE_TO_ASSIGN_IRQ;
+        free_irq_vector(vector);
         vector_channel[vector] = -1;
         return -EINVAL;
     }

_______________________________________________
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®.