On Mon, Sep 26, 2016 at 4:33 PM, Frediano Ziglio <fzig...@redhat.com> wrote:
> > > > Interrupts seem to arrive to the driver before the initialization phase > > is over (m_pHWDevice = NULL), in that case we can't handle interrupts > yet. > > I would remove the "seem" > > > Even > > when m_pHWDevice isn't NULL, other fields aren't necessarly fully > intialized > > till > > the StartDevice function has finished initialization, thus the flag > > DriverStarted should be checked upon interrupts. > > > > Note: There is no way provided by microsoft to disable interrupts in WDDM > > drivers. > > > > Signed-off-by: Sameeh Jubran <sam...@daynix.com> > > --- > > qxldod/QxlDod.cpp | 6 +++++- > > 1 file changed, 5 insertions(+), 1 deletion(-) > > > > diff --git a/qxldod/QxlDod.cpp b/qxldod/QxlDod.cpp > > index 3fb30ce..7de64e9 100755 > > --- a/qxldod/QxlDod.cpp > > +++ b/qxldod/QxlDod.cpp > > @@ -62,6 +62,7 @@ QxlDod::QxlDod(_In_ DEVICE_OBJECT* > pPhysicalDeviceObject) : > > m_pPhysicalDevice(pP > > PAGED_CODE(); > > DbgPrint(TRACE_LEVEL_INFORMATION, ("---> %s\n", __FUNCTION__)); > > *((UINT*)&m_Flags) = 0; > > + m_Flags.DriverStarted = FALSE; > > RtlZeroMemory(&m_DxgkInterface, sizeof(m_DxgkInterface)); > > RtlZeroMemory(&m_DeviceInfo, sizeof(m_DeviceInfo)); > > RtlZeroMemory(m_CurrentModes, sizeof(m_CurrentModes)); > > This should be no-op but better to explicit. > > > @@ -1684,7 +1685,10 @@ VOID QxlDod::DpcRoutine(VOID) > > BOOLEAN QxlDod::InterruptRoutine(_In_ ULONG MessageNumber) > > { > > DbgPrint(TRACE_LEVEL_INFORMATION, ("<--> 0 %s\n", __FUNCTION__)); > > - return m_pHWDevice->InterruptRoutine(&m_DxgkInterface, > MessageNumber); > > + if (m_Flags.DriverStarted) { > > + return m_pHWDevice ? m_pHWDevice->InterruptRoutine( > &m_DxgkInterface, > > MessageNumber) : FALSE; > > + } > > + return FALSE; > > } > > > > VOID QxlDod::ResetDevice(VOID) > > What about > > if (m_Flags.DriverStarted && m_pHWDevice) { > return m_pHWDevice->InterruptRoutine(&m_DxgkInterface, > MessageNumber); > } > return FALSE; > > Rest is fine, I can do the change by myself if you agree or I'll merge as > it otherwise. > I agree, go ahead :) > > Acked-by: Frediano Ziglio <fzig...@redhat.com> > > Frediano > -- Respectfully, *Sameeh Jubran* *Linkedin <https://il.linkedin.com/pub/sameeh-jubran/87/747/a8a>* *Junior Software Engineer @ Daynix <http://www.daynix.com>.*
_______________________________________________ Spice-devel mailing list Spice-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/spice-devel