Block thread by KeWaitForSingleObject(..)

Hi,
Is it possible to block a service-dispatch thread in kernel mode without
completing the IRP or without return STATUS_PENDING.

Raja

Yes you can do that. But make sure that you are blocking only your service’s
threads.
-Kiran


From: xxxxx@lists.osr.com
[mailto:xxxxx@lists.osr.com] On Behalf Of Kannan, Raja
Sent: Tuesday, May 10, 2005 3:26 PM
To: Windows System Software Devs Interest List
Subject: [ntdev] Block thread by KeWaitForSingleObject(…)

Hi,
Is it possible to block a service-dispatch thread in kernel mode without
completing the IRP or without return STATUS_PENDING.

Raja


Questions? First check the Kernel Driver FAQ at
http://www.osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument: ‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com

Why do you want to do this? The whole point of STATUS_PENDING is to tell
the OS that you’re dealing with the packet, and you’re currently waiting
for something to happen.

The obvious solution is to put the IRP in a private queue, and deal with it
in a separate thread…


Mats

xxxxx@lists.osr.com wrote on 05/10/2005 10:55:52 AM:

Hi,
Is it possible to block a service-dispatch thread in kernel mode
without completing the IRP or without return STATUS_PENDING.

Raja

Questions? First check the Kernel Driver FAQ at http://www.
osronline.com/article.cfm?id=256

You are currently subscribed to ntdev as: unknown lmsubst tag argument:
‘’
To unsubscribe send a blank email to xxxxx@lists.osr.com
ForwardSourceID:NT00012ABA

Block thread by KeWaitForSingleObject(…)Raja

There are a lot of things you can do that you should not do, both in life in general, and in kernel mode in windows :slight_smile: This does sound like a classic case for STATUS_PENDING and a [driver] queued Irp.

If the Irql is less than DISPATCH_LEVEL you can block in KeWaitForSingleObject … which perhaps implies you plan to wait until other thread has done something … so take care to ensure you will not introduce deadlock …

Lyndon
“Kannan, Raja” wrote in message news:xxxxx@ntdev…
Hi,
Is it possible to block a service-dispatch thread in kernel mode without completing the IRP or without return STATUS_PENDING.

Raja