vioscsi: move request handler from INTx ISR to DPC
vioscsi: move request handler from INTx ISR to DPC

When MSIs are disabled, the OS uses INTx and calls VioScsiInterrupt to
handle interrupts. This ISR eventually calls CompleteRequest on DIRQL.
Sometimes StorPortFreeContiguousMemorySpecifyCache is called during
request completion, but it requires IRQL <= DPC_LEVEL, not DIRQL.
Sometimes it leads to deadlock. It is necessary to complete requests in
IsrDpc, like VioScsiMSInterrupt does.

Signed-off-by: Ilya Rudakov <8300843b273e1d997b2d119060a4420345621b2e@virtuozzo.com>

vrozenfe/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,YanVugenfirer/kvm-guest-drivers-windows,vrozenfe/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,daynix/kvm-guest-drivers-windows,virtio-win/kvm-guest-drivers-windows