Why do I have 0xD5 stop code with driver verifier

Hi,

In my driver’s device io control dispatch, I allocated a piece of memory from the NonPagedPool, then I passed the IRP and the memory to a worker thread for deferred process. In the worker thread, I tried to access the memory, Driver Verifier crashes the system with stop code 0XD5, meaning “accessing memory after it being deleted”. I am pretty sure I did not delete the memory before this!

I am assuming I can use some memory allocated in another thread context as long as that memory was allocated from the nonpaged Pool. Am I right?

By the way, when Driver Verifier crashes, it does not give the backtrace of the stack? Anybody knows why?

Thanks a lot.

Lijun


Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience