Windows System Software -- Consulting, Training, Development -- Unique Expertise, Guaranteed Results

Before Posting...
Please check out the Community Guidelines in the Announcements and Administration Category.

RE: RE:Baffling KeReleaseMutex() and STATUS_MUTANT_NOT_OWNED Exceptions

Ken_JohnsonKen_Johnson Member - All Emails Posts: 1,559
There have been special semantics for certain wait reasons back for many, many releases (I only looked as far back as NT 3.51); the specific semantics and their associated situations used within the kernel have varied over the years, however. In general, these aren't semantics that are useful other than as internal hints within the kernel itself for certain conditions, so they're not exposed in the set of documented wait reasons that should generally be used with the wait services.

- S (Msft)

-----Original Message-----
From: [] On Behalf Of
Sent: Tuesday, January 01, 2013 2:42 PM
To: Windows System Software Devs Interest List
Subject: RE:[ntdev] Baffling KeReleaseMutex() and STATUS_MUTANT_NOT_OWNED Exceptions

There isn't a behavioral difference presently built-in to the kernel between these two waits reasons, just what tools that can query the wait reason display (e.g. the debugger).

I realize you're referencing two specific wait reasons... but for the archives and completeness: Until a few years back (errrr, Vista maybe?) there was never any behavioral difference in the OS regarding wait reason EVER. In past code, I had code which took advantage of this fact by using an unusual wait reason for things like waiting threads in worker thread pools -- this made finding those threads in a crash dump fast and easy.

However, IIRC, the wait reason is now significant in some cases.... so, best to follow the guidance which has always existed and use "Executive" or whatever.


NTDEV is sponsored by OSR

For our schedule of WDF, WDM, debugging and other seminars visit:

To unsubscribe, visit the List Server section of OSR Online at
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Upcoming OSR Seminars
Developing Minifilters 29 July 2019 OSR Seminar Space
Writing WDF Drivers 23 Sept 2019 OSR Seminar Space
Kernel Debugging 21 Oct 2019 OSR Seminar Space
Internals & Software Drivers 18 Nov 2019 Dulles, VA