NdisDprAcquireSpinLock pass the WHQL 11.2 on WinXP but *Failed* on Win2K

P

Paul Simon

On the ResetHandler of the driver routine. I use the
*NdisDprAcquireSpinLock* and *NdisDprReleaseSpinLock* API to gain
exclusive access to the resources and to do a hardware reset. This
will Pass the WHQL 11.2 On WinXP, But *failed*
on Win2K by testing NDIS Test version 4.03.0030

The failed item is on 1c_Reset.wsf

When I change the code *NdisDprAcquireSpinLock* and
*NdisDprReleaseSpinLock*
to *NdisAcquireSpinLock* and *NdisReleaseSpinLock* on Win2K by testing
NDIS Test version 4.03.0030 then 1c_Reset.wsf never failed again! Why?

What's the difference between *NdisDprAcquireSpinLock* and
*NdisAcquireSpinLock*? Does someone have met the same problem? Thanks!

~Paul
 
M

Marc Reinig

NdisDprAcquireSpinLock requires that you are running at IRQL == DISPATCH.

NdisAcquireSpinLock requires that you are running at IRQL <= DISPATCH.

Since MiniportReset runs at IRQL == DISPATCH, maybe they don't want you to
waste time trying to raise IRQL to DISPATCH when you should already be
there.

Marc Reinig
System Solutions
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top