Re: MiniportHandleInterrupt not queued when MiniportHalt is running in
From: Stephan Wolf [MVP] (stewo68_at_hotmail.com)
Date: 02/25/05
- Next message: Stephan Wolf [MVP]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is runnin"
- Previous message: polybear: "Re: How could i reset a USB device"
- In reply to: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Next in thread: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Reply: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Messages sorted by: [ date ] [ thread ]
Date: Fri, 25 Feb 2005 10:27:29 +0100
Sure you are right but the OP talks about the *CE* docs, which
actually say:
http://msdn.microsoft.com/library/en-us/wcesdkr/html/_wcesdk_MiniportISR.asp
"The MiniportHandleInterrupt function is not queued if the driver's
MiniportHalt or MiniportInitialize function is currently executing."
So this is contradictory.
Note that MiniportHandleInterrupt() can also get called *without* any
MiniportISR() during or shortly after MiniportInitialize(), as
reported by MS (kyleb) in 1997, see
I consider this bad behaviour (NDIS workaround for badly written
miniports) but I am currently not aware if NDIS still does so today
(to cope with this, all my miniports simply ignore DPCs w/o a
preceding ISR).
Stephan
---
On Thu, 24 Feb 2005 19:27:15 -0800, "Alireza Dabagh [MS]"
<alid@online.microsoft.com> wrote:
>Replying to Pavel's question:
>
>>Is this a problem? do you really need DPC queued while you're in Halt() ?
>In general, "absoloutely!" How do we know if in order to clean up and set
>the state of the hardware properly (so it can be re-enabled or the system
>can be restarted without any hang) the driver does not need to write a
>command to a hardware register that will signal its completion through
>generating an interrupt?
>
>In any case, the rule is that as long as the call to
>NdisMDeregisterInterrupt has not returned, you can get caleld at your ISR
>and DPC handler. NDIS will not call your ISR or DPC handler afterward.
>
>-ali
- Next message: Stephan Wolf [MVP]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is runnin"
- Previous message: polybear: "Re: How could i reset a USB device"
- In reply to: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Next in thread: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Reply: Alireza Dabagh [MS]: "Re: MiniportHandleInterrupt not queued when MiniportHalt is running in"
- Messages sorted by: [ date ] [ thread ]