Microsoft KB Archive/294790

From BetaArchive Wiki
Knowledge Base


When Object Manager Calls a Close Procedure, and ObpInitKillMutant is Held, New Processes Cannot Be Created.

Article ID: 294790

Article Last Modified on 3/1/2007



APPLIES TO

  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition



This article was previously published under Q294790

SYMPTOMS

When the Object Manager calls a close procedure and the ObpInitKillMutant is held while handles are being closed in the cleanup process, new processes cannot be created.

RESOLUTION

To resolve this problem, obtain the latest service pack for Windows 2000. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

260910 How to Obtain the Latest Windows 2000 Service Pack


STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

This problem was first corrected in Windows 2000 Service Pack 2.

MORE INFORMATION

An application may open a file handle that can be inherited. It then spawns a second application, which inherits the handle. The first application then sends down an I/O request that blocks. While this I/O request is pending, this thread is holding the file object lock. The second application then quits without closing its handle.

Object Manager cleans up the handle table. When it gets to this shared handle, it blocks, waiting for the file object lock. The problem is that it is holding the ObpInitKillMutant. The system's being in this state can allow a User mode application to hang the system. At this point, you cannot start any new applications, including Task Manager, and you cannot quit the first application that is holding the file object lock.

NOTE: A similar issue is present for Windows NT 4.0. For further information on this, see the following:

294306 Windows NT 4.0 May Hang During Process Shutdown


Keywords: kbhotfixserver kbqfe kbbug kbfix kbprogramming kbqfe kbwin2000presp2fix KB294790