Access Violation in win32k!HMMarkObjectDestroy in Japanese and Korean Windows NT (185945)



The information in this article applies to:

  • Microsoft Windows NT Server 4.0 Terminal Server Edition
  • Microsoft Windows NT Server 4.0
  • Microsoft Windows NT Server, Enterprise Edition 4.0
  • Microsoft Windows NT Workstation 4.0

This article was previously published under Q185945

SYMPTOMS

When you run the Japanese or Korean versions of Windows NT 4.0, the system displays a blue screen error message. When you examine the call stack, you see an access violation in either of the following:

   win32k!HMMarkObjectDestroy

   win32k!HMAllocObject
				

The blue screen error message would be displayed as a STOP 0x1E in Win32k.sys

STOP: 0x0000001E ( 0xC00000005, 0xA0036FC2, 0x00000000, 0x00000004) K_MODE_EXCEPTION_NOT_HANDLED address 0xA0036FC2 in Win32K.sys

CAUSE

HMAllocObject() is not supposed to run in parallel, but it was being called simultaneously from multiple threads:

HMAllocObject() <- GetCPD() <- _GetClassInfo() <- NtUserGetClassInfo()
				

RESOLUTION

To resolve this problem, obtain the latest service pack for Windows NT 4.0 or Windows NT Server 4.0, Terminal Server Edition. For additional information, click the following article number to view the article in the Microsoft Knowledge Base:

152734 How to Obtain the Latest Windows NT 4.0 Service Pack


STATUS

Microsoft has confirmed that this is a problem in Windows NT 4.0 and Windows NT Server 4.0, Terminal Server Edition. This problem was first corrected in Windows NT 4.0 Service Pack 4.0 and Windows NT Server 4.0, Terminal Server Edition Service Pack 4.

MORE INFORMATION

Two call stacks have been seen in stress testing, both of which are caused by the same problem.

Stack for access violation in win32k!HMMarkObjectDestroy:

   win32k!HMMarkObjectDestroy+0x17
   win32k!HMDestroyUnlockedObject+0x88
   win32k!DestroyThreadsObjects+0x85
   win32k!xxxDestroyThreadInfo+0xbd
   win32k!UserThreadCallout+0x58
   win32k!W32pThreadCallout+0x1d
   ntkrnlmp!PspExitThread+0x24f
   ntkrnlmp!NtTerminateProcess+0x13c
   ntkrnlmp!KiSystemService+0xc9
   NTDLL!ZwTerminateProcess+0xb
				

Stack for access violation in win32k!HMAllocObject:

   febec540 a002c77f e13d9e88 ff6a6d28 00000001 win32k!HMAllocObject+0x1da
   febec61c a002d3ee 00000000 febec674 febec680
   win32k!xxxCreateWindowExWOW+0x111
   febec6c0 8013bb59 80000000 febec674 febec680
   win32k!NtUserCreateWindowEx+0x1aa
   febec6c0 77eb0257 80000000 febec674 febec680
   ntoskrnl!KiSystemService+0xb9
   0012f864 77e77470 80000000 00144e98 00144e98 0x77eb0257
				

Modification Type:MinorLast Reviewed:9/23/2005
Keywords:kbHotfixServer kbQFE kbbug kbfix KB185945