win-pvdrivers

changeset 570:36fef48dbfa9

irq delivery updates
author James Harper <james.harper@bendigoit.com.au>
date Sun May 10 20:20:39 2009 +1000 (2009-05-10)
parents 00d35855e2e4
children 67baf8f3c424
files xenscsi/xenscsi.c
line diff
     1.1 --- a/xenscsi/xenscsi.c	Sun May 10 20:20:23 2009 +1000
     1.2 +++ b/xenscsi/xenscsi.c	Sun May 10 20:20:39 2009 +1000
     1.3 @@ -78,6 +78,7 @@ XenScsi_HwScsiInterrupt(PVOID DeviceExte
     1.4    vscsiif_response_t *rep;
     1.5    int more_to_do = TRUE;
     1.6    vscsiif_shadow_t *shadow;
     1.7 +  BOOLEAN last_interrupt = FALSE;
     1.8  
     1.9    if (xsdd->pause_ack != xsdd->pause_req)
    1.10    {
    1.11 @@ -88,7 +89,7 @@ XenScsi_HwScsiInterrupt(PVOID DeviceExte
    1.12        ScsiPortNotification(NextRequest, DeviceExtension);
    1.13      }
    1.14    }
    1.15 -  if (!dump_mode && !xsdd->vectors.EvtChn_AckEvent(xsdd->vectors.context, xsdd->event_channel))
    1.16 +  if (!dump_mode && !xsdd->vectors.EvtChn_AckEvent(xsdd->vectors.context, xsdd->event_channel, &last_interrupt))
    1.17    {
    1.18      return FALSE;
    1.19    }
    1.20 @@ -196,7 +197,7 @@ XenScsi_HwScsiInterrupt(PVOID DeviceExte
    1.21  
    1.22    //FUNCTION_EXIT();
    1.23    
    1.24 -  return FALSE;
    1.25 +  return !last_interrupt;
    1.26  }
    1.27  
    1.28  static VOID