Invalid Operand with Locked CMPXCHG8B Instruction

Last reviewed: February 23, 1998
Article ID: Q163852
The information in this article applies to:
  • Microsoft Windows NT Workstation versions 3.5, 3.51, and 4.0
  • Microsoft Windows NT Server versions 3.5, 3.51, and 4.0
  • Microsoft Windows 95

SYMPTOMS

When an Intel processor receives a specific invalid instruction, your computer may stop responding (hang). Your computer must be turned off and restarted to return to normal operation.

NOTE: Although there is no known operating system or application that issues such an invalid instruction, you should be aware that a program can be written maliciously to contain such an instruction. The operating system would not trap this error, as it should, which results in the processor hang.

CAUSE

This problem can occur due to an error in the following Intel processors:

  • Pentium processor
  • Pentium processor with MMX technology
  • Pentium OverDrive processor
  • Pentium OverDrive processors with MMX technology

NOTE: This problem cannot occur on the following Intel processors:
  • Pentium Pro processor
  • Pentium II processor
  • i486 and earlier processors

This problem is known as "Invalid Operand with Locked CMPXCHG8B Instruction" and is erratum 81 on the Pentium processor errata list. For more information, please contact Intel or go to the following Intel web site:

   http://support.intel.com/sites/support/

RESOLUTION

Intel has identified a workaround to this problem that allows the operating system to trap the invalid instruction and not pass it to the processor. Microsoft has worked closely with Intel to provide the following hotfixes:

Windows NT 4.0

To resolve this problem for Windows NT 4.0, obtain the following fix or wait for the next Windows NT service pack.

This fix should have the following time stamp:

   11/24/97  12:24p                51,968 Hal.dll
   11/24/97  12:24p                48,384 Hal486c.dll
   11/24/97  12:25p                66,400 Halapic.dll
   11/24/97  12:24p                46,112 Halast.dll
   11/24/97  12:25p                82,208 Halcbus.dll
   11/24/97  12:25p                80,320 Halcbusm.dll
   11/24/97  12:24p                46,400 Halmca.dll
   11/24/97  12:25p                68,544 Halmps.dll
   11/24/97  12:25p                67,552 Halmpsm.dll
   11/24/97  12:26p                79,008 Halncr.dll
   11/24/97  12:25p                40,192 Haloli.dll
   11/24/97  12:25p                56,608 Halsp.dll
   11/24/97  12:25p                40,768 Halwyse7.dll
   11/20/97  06:23p               938,816 Ntkrnlmp.exe
   11/20/97  06:22p               918,848 Ntoskrnl.exe

This hotfix has been posted to the following Internet location:

   ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes/usa/NT40/
   hotfixes-postSP3/pent-fix/

NOTE: The above link is one path; it has been wrapped for readability.

Windows NT 3.51

To resolve this problem for Windows NT 3.51, obtain the following fix.

This fix should have the following time stamp:

   11/24/97  12:42p                49,840 Hal.dll
   11/24/97  12:42p                48,768 Hal486c.dll
   11/24/97  12:42p                65,648 Halapic.dll
   11/24/97  12:42p                46,704 Halast.dll
   11/24/97  12:42p                81,056 Halcbus.dll
   11/24/97  12:42p                79,200 Halcbusm.dll
   11/24/97  12:42p                46,912 Halmca.dll
   11/24/97  12:42p                67,696 Halmps.dll
   11/24/97  12:42p                40,480 Haloli.dll
   11/24/97  12:42p                53,744 Halsp.dll
   11/24/97  12:42p                49,840 Halws3.dll
   11/24/97  12:42p                41,072 Halwyse7.dll
   11/21/97  01:35p               821,904 Ntkrnlmp.exe
   11/21/97  01:34p               810,016 Ntoskrnl.exe

This hotfix has been posted to the following Internet location:

   ftp://ftp.microsoft.com/bussys/winnt/winnt-public/fixes/usa/NT351/
   hotfixes-postSP5/pent-fix/

NOTE: The above link is one path; it has been wrapped for readability.

Windows 95

A fix for Windows 95 is not yet available.

STATUS

Windows NT 4.0

Intel has confirmed this to be a problem in the Intel processors listed above. A supported fix is now available from Microsoft, but has not been fully regression-tested and should be applied only to systems experiencing this specific problem. Unless you are severely impacted by this specific problem, Microsoft recommends that you wait for the next Service Pack that contains this fix. Contact Microsoft Technical Support for more information.

Windows NT 3.51

Intel has confirmed this to be a problem in the Intel processors listed above. A supported fix is now available from Microsoft, but has not been fully regression-tested and should be applied only to systems experiencing this specific problem. Unless you are severely impacted by this specific problem, Microsoft recommends that you wait for the next Service Pack that contains this fix. Contact Microsoft Technical Support for more information.

Windows 95

Intel has confirmed this to be a problem in the Intel processors listed above. Microsoft is researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.


Additional query words: 95 3.50 3.51 4.00 i386 malicious hangs freeze
freezes erratum cmpxchg8b compare and exchange 8 bytes cold boot hard boot
Keywords : nthw NTSrvWkst kbhw
Version : WinNT:3.5,3.51,4.0;Windows:95
Platform : WINDOWS winnt
Hardware : x86
Issue type : kbbug
Solution Type : kbpatch


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: February 23, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.