Acked-by: Frediano Ziglio <fziglio@xxxxxxxxxx> Signed-off-by: Sameeh Jubran <sameeh@xxxxxxxxxx> --- qxldod/QxlDod.cpp | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/qxldod/QxlDod.cpp b/qxldod/QxlDod.cpp index 014e236..5a3276f 100755 --- a/qxldod/QxlDod.cpp +++ b/qxldod/QxlDod.cpp @@ -4,6 +4,11 @@ #pragma code_seg(push) #pragma code_seg() + +#define WIN_QXL_INT_MASK ((QXL_INTERRUPT_DISPLAY) | \ + (QXL_INTERRUPT_CURSOR) | \ + (QXL_INTERRUPT_IO_CMD)) + // BEGIN: Non-Paged Code // Bit is 1 from Idx to end of byte, with bit count starting at high order @@ -3344,7 +3349,7 @@ NTSTATUS QxlDevice::QxlInit(DXGK_DISPLAY_INFORMATION* pDispInfo) WRITE_PORT_UCHAR((PUCHAR)(m_IoBase + QXL_IO_RESET), 0); CreateRings(); - m_RamHdr->int_mask = ~0; + m_RamHdr->int_mask = WIN_QXL_INT_MASK; CreateMemSlots(); InitDeviceMemoryResources(); return Status; @@ -4548,10 +4553,11 @@ BOOLEAN QxlDevice::InterruptRoutine(_In_ PDXGKRNL_INTERFACE pDxgkInterface, _In_ pDxgkInterface->DxgkCbNotifyInterrupt(pDxgkInterface->DeviceHandle,¬ifyInt); if (!pDxgkInterface->DxgkCbQueueDpc(pDxgkInterface->DeviceHandle)) { - m_RamHdr->int_mask = ~0; + m_RamHdr->int_mask = WIN_QXL_INT_MASK; WRITE_PORT_UCHAR((PUCHAR)(m_IoBase + QXL_IO_UPDATE_IRQ), 0); DbgPrint(TRACE_LEVEL_FATAL, ("---> %s DxgkCbQueueDpc failed\n", __FUNCTION__)); } + DbgPrint(TRACE_LEVEL_VERBOSE, ("<--- %s\n", __FUNCTION__)); return TRUE; } @@ -4583,7 +4589,7 @@ VOID QxlDevice::DpcRoutine(PVOID ptr) DbgPrint(TRACE_LEVEL_INFORMATION, ("---> %s m_IoCmdEvent\n", __FUNCTION__)); KeSetEvent (&m_IoCmdEvent, IO_NO_INCREMENT, FALSE); } - m_RamHdr->int_mask = ~0; + m_RamHdr->int_mask = WIN_QXL_INT_MASK; WRITE_PORT_UCHAR((PUCHAR)(m_IoBase + QXL_IO_UPDATE_IRQ), 0); DbgPrint(TRACE_LEVEL_INFORMATION, ("<--- %s\n", __FUNCTION__)); -- 2.7.0.windows.1 _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/spice-devel