bitkeeper revision 1.874 (408808d0T9IfojQOKayZ-Kw-GYP94A)
authorkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Thu, 22 Apr 2004 18:02:56 +0000 (18:02 +0000)
committerkaf24@scramble.cl.cam.ac.uk <kaf24@scramble.cl.cam.ac.uk>
Thu, 22 Apr 2004 18:02:56 +0000 (18:02 +0000)
Fix event-channel suspend/resume.

xenolinux-2.4.26-sparse/arch/xen/kernel/evtchn.c

index 4f933057c278bef41aaa5fff4866bff711b62c15..1d70d00bb54aa167c7b9ae5f7eb1c1c15c61917e 100644 (file)
@@ -355,8 +355,7 @@ static struct irqaction misdirect_action = {
 
 void irq_suspend(void)
 {
-    evtchn_op_t op;
-    int         virq, irq, evtchn;
+    int virq, irq, evtchn;
 
     /* Unbind VIRQs from event channels. */
     for ( virq = 0; virq < NR_VIRQS; virq++ )
@@ -365,13 +364,6 @@ void irq_suspend(void)
             continue;
         evtchn = irq_to_evtchn[irq];
 
-        /* Inform Xen that we are unbinding. */
-        op.cmd          = EVTCHNOP_close;
-        op.u.close.dom  = DOMID_SELF;
-        op.u.close.port = evtchn;
-        if ( HYPERVISOR_event_channel_op(&op) != 0 )
-            panic("Failed to unbind virtual IRQ %d\n", virq);
-
         /* Mark the event channel as unused in our table. */
         evtchn_to_irq[evtchn] = -1;
         irq_to_evtchn[irq]    = -1;