Win10 Dis/Ena syndrome

Sorry to bother this list with this but I haven’t posted in ages so pls
forgive. Although seen occasionally in Win7-64, this syndrome is more
pronounced, even constant, in Win10-64. Our complex WDM driver starts and
appears to be OK in Device Manager but our ASIC’s scripts (allocated in
kernel system memory) are (I think) corrupted and no data transfers can
occur. However, if one (in Dev. Mgr.) simply does a ‘Disable’ followed by
an ‘Enable’, then all is well and we can transfer external data through our
board from then on until system shutdown. So this is a one-time startup
problem fixed by the Disable/Enable cycle - weird. I know I’m being lazy
(haven’t looked at our driver code in a while) but would someone who knows
please indicate what commands (Start/Stop ?) are issued to the driver during
the Disable/Enable cycle?

Most humbly obliged .

Bill Casey

ASC

Query remove -> remove (implicit power down) -> device object deleted -> perhaps driver unload -> driver load -> create device object -> add device -> start

d

From: xxxxx@lists.osr.com [mailto:xxxxx@lists.osr.com] On Behalf Of Bill Casey
Sent: Thursday, June 2, 2016 11:52 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Win10 Dis/Ena syndrome

Sorry to bother this list with this but I haven’t posted in ages so pls forgive. Although seen occasionally in Win7-64, this syndrome is more pronounced, even constant, in Win10-64. Our complex WDM driver starts and appears to be OK in Device Manager but our ASIC’s scripts (allocated in kernel system memory) are (I think) corrupted and no data transfers can occur. However, if one (in Dev. Mgr.) simply does a ‘Disable’ followed by an ‘Enable’, then all is well and we can transfer external data through our board from then on until system shutdown. So this is a one-time startup problem fixed by the Disable/Enable cycle - weird. I know I’m being lazy (haven’t looked at our driver code in a while) but would someone who knows please indicate what commands (Start/Stop ?) are issued to the driver during the Disable/Enable cycle?

Most humbly obliged …

Bill Casey
ASC


NTDEV is sponsored by OSR

Visit the list online at: http:

MONTHLY seminars on crash dump analysis, WDF, Windows internals and software drivers!
Details at http:

To unsubscribe, visit the List Server section of OSR Online at http:</http:></http:></http:>

Many thanks, Doron!!

Bill Casey

ASC

From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Doron Holan
Sent: Thursday, June 2, 2016 3:20 PM
To: Windows System Software Devs Interest List
Subject: RE: [ntdev] Win10 Dis/Ena syndrome

Query remove -> remove (implicit power down) -> device object deleted ->
perhaps driver unload -> driver load -> create device object -> add device
-> start

d

From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Bill Casey
Sent: Thursday, June 2, 2016 11:52 AM
To: Windows System Software Devs Interest List
Subject: [ntdev] Win10 Dis/Ena syndrome

Sorry to bother this list with this but I haven’t posted in ages so pls
forgive. Although seen occasionally in Win7-64, this syndrome is more
pronounced, even constant, in Win10-64. Our complex WDM driver starts and
appears to be OK in Device Manager but our ASIC’s scripts (allocated in
kernel system memory) are (I think) corrupted and no data transfers can
occur. However, if one (in Dev. Mgr.) simply does a ‘Disable’ followed by
an ‘Enable’, then all is well and we can transfer external data through our
board from then on until system shutdown. So this is a one-time startup
problem fixed by the Disable/Enable cycle - weird. I know I’m being lazy
(haven’t looked at our driver code in a while) but would someone who knows
please indicate what commands (Start/Stop ?) are issued to the driver during
the Disable/Enable cycle?

Most humbly obliged .

Bill Casey

ASC


NTDEV is sponsored by OSR

Visit the list online at:
http:

MONTHLY seminars on crash dump analysis, WDF, Windows internals and software
drivers!
Details at http:

To unsubscribe, visit the List Server section of OSR Online at
http:


NTDEV is sponsored by OSR

Visit the list online at:
http:

MONTHLY seminars on crash dump analysis, WDF, Windows internals and software
drivers!
Details at http:

To unsubscribe, visit the List Server section of OSR Online at
http:</http:></http:></http:></http:></http:></http:>

Your initialization function may not do all that’s necessary (perhaps a hardware reset), and your stop function may be doing what’s missing.

I have *exactly* the same problem in an SPB driver. It must be a bug in Windows :wink:

Seriously, I’ve seen this type of problem many times. I haven’t had the time to track down the SPB driver bug, but I suspect in MY case it’s caused by my issuing commands back-to-back without waiting sufficiently between them. On the second initialization, the command sequence goes “faster” because the device is already partially initialized. But that’s just a guess.

Peter
OSR
@OSRDrivers

>It must be a bug in Windows :wink:



Some NTDEV participants are not going to be too happy about such a “discovery”, especially taking into consideration its author, dont you think. Don’t forget that Windows happens to be an object of adoration and, probably, even a religious symbol for some folks on this list.
For examle, those who tend to associate themselves with “tame calves sucking from multiple mothers” just worship it, and the ones from FLAG_CAPS_ALWAYS_LOCKED community are not that far behind either . I guess a such a statement, made on Friday afternoon, may be sufficient for ruining their entire weekend…

Anton Bassov

I just wonder if this may be just somehow related to device latency, i.e. you just start using a device too early, while hardware initialisation is still in progress, in the former scenario…

Anton Bassov

>Don’t forget that Windows happens to be an object of adoration and, probably, even a religious symbol for some folks on this list.

People who adore any particular OS just don’t know its guts well. Holds for all major OSes.

>People who adore any particular OS just don’t know its guts well. Holds for all major OSes.

Well, I don’t know how the “tame calves” may react to the above statement, but I am pretty sure “FLAG_CAPS_ALWAYS_LOCKED community” is going to challenge it and tell us about their 60+ years of system-level programming experience…

Anton Bassov

Hey Anton… What’s my next post I this thread most likely to say? You should be able to write it for me…

Peter
OAR
@OSRDrivers

> Hey Anton… What’s my next post I this thread most likely to say? You should be able

to write it for me…

OK, I shut up - in fact, should not have started it, in the first place. Sorry,Peter…

Anton Bassov