HwEnableInterruptsCallback Routine

A HwEnableInterruptsCallback routine finishes processing a polled I/O operation without inhibiting I/O operations for other devices in the machine. When the HwEnableInterruptsCallback routine gets control, all system device interrupts are enabled except from the HBA. In other words, the miniport's HwInterrupt routine cannot be called and cannot disturb the context data it set up about the current operation while the HwEnableInterruptsCallback routine is running.

A HwEnableInterruptsCallback routine should do the following:

  1. Use the context that was set up for the operation in the input device extension to complete processing of the request that caused the interrupt.
  2. Call ScsiPortNotification with a pointer to the device extension, the NotificationType CallDisableInterrupts, and the miniport's HwDisableInterruptsCallback routine, described in HwDisableInterruptsCallback Routine.
  3. Return control.

ScsiPortNotification calls the HwDisableInterruptsCallback routine with a subset of the system device interrupts disabled: that is, no device interrupt with a system-assigned hardware priority (IRQL) less than or equal to the HBA's can interrupt.