From Debugging Tools for Windows
Bug Check 0x7F: UNEXPECTED_KERNEL_MODE_TRAP
The UNEXPECTED_KERNEL_MODE_TRAP bug check has a value of 0x0000007F. This
indicates that a trap was generated by the Intel CPU and the kernel failed
to catch this trap.
This could be either a bound trap (a trap the kernel is not permitted to
catch) or a double fault (a fault that occurred while processing an earlier
fault, which always results in a system crash).
Parameters
The first parameter displayed on the blue screen specifies the trap number.
Here are some of the most common trap codes:
0x00000000, or Divide by Zero Error, is caused when a DIV instruction is
executed and the divisor is zero. Memory corruption, other hardware
problems, or software failures can cause this error.
0x00000004, or Overflow, occurs when the processor executes a call to an
interrupt handler when the overflow (OF) flag is set.
0x00000005, or Bounds Check Fault, is generated when the processor, while
executing a BOUND instruction, finds the operand exceeds the specified
limits. A BOUND instruction is used to ensure that a signed array index is
within a certain range.
0x00000006, or Invalid Opcode, is generated when the processor attempts to
execute an invalid instruction. This is generally caused when the
instruction pointer has become corrupted and is pointing to the wrong
location. The most common cause of this is hardware memory corruption.
0x00000008, or Double Fault, is when an exception occurs while trying to
call the handler for a prior exception. Normally, the two exceptions can be
handled serially. However, there are several exceptions that cannot be
handled serially, and in this situation the processor signals a double
fault. There are two common causes of a double fault:
A kernel stack overflow. This occurs when a guard page is hit, and then the
kernel tries to push a trap frame. Since there is no stack left, a stack
overflow results, causing the double fault. If you suspect this has
occurred, use !thread to determine the stack limits, and then use kb
(Display Stack Backtrace) with a large parameter (for example, kb 100) to
display the full stack.
A hardware problem.
The less-common trap codes include:
0x00000001 - A system-debugger call
0x00000003 - A debugger breakpoint
0x00000007 - A hardware coprocessor instruction with no coprocessor present
0x0000000A - A corrupted Task State Segment
0x0000000B - An access to a memory segment that was not present
0x0000000C - An access to memory beyond the limits of a stack
0x0000000D - An exception not covered by some other exception; a protection
fault that pertains to access violations for applications
For other trap numbers, consult an Intel architecture manual.
Cause
Bug check 0x7F usually occurs after the installation of faulty or mismatched
hardware (especially memory) or in the event that installed hardware fails.
A double fault can occur when the kernel stack overflows. This can happen if
multiple drivers are attached to the same stack. For example, two file
system filter drivers can be attached to the same stack and then the file
system can recurse back in, overflowing the stack.
Resolving the Problem
Debugging: Always begin with the !analyze extension.
If this is not sufficient, use the kv (Display Stack Backtrace) debugger
command.
If kv shows a taskGate, then use the .tss (Display Task State Segment)
command on the part before the colon.
If kv shows a trap frame, then use the .trap (Display Trap Frame) command to
format the frame.
Otherwise, use the .trap (Display Trap Frame) command on the appropriate
frame. (On x86 platforms, this frame is associated with the procedure
NT!KiTrap.)
After this, use kv again to display the new stack.
Troubleshooting: If hardware was recently added to the system, remove it to
see if the error recurs. If existing hardware has failed, remove or replace
the faulty component. Run hardware diagnostics supplied by the system
manufacturer, to determine which hardware component has failed. The memory
scanner is especially important; faulty or mismatched memory can cause this
bug check. For details on these procedures, see the owner's manual for your
computer. Check that all adapter cards in the computer are properly seated.
Use an ink eraser or an electrical contact treatment, available at
electronics supply stores, to ensure adapter card contacts are clean.
If the error appears on a newly installed system, check the availability of
updates for the BIOS, the SCSI controller or network cards. Updates of this
kind are typically available on the Web site or BBS of the hardware
manufacturer.
Confirm that all hard disks, hard disk controllers, and SCSI adapters are
listed in the Microsoft Windows Marketplace Tested Products List.
If the error occurred after the installation of a new or updated device
driver, the driver should be removed or replaced. If, under this
circumstance, the error occurs during the startup sequence and the system
partition is formatted with NTFS, you might be able to use Safe Mode to
rename or delete the faulty driver. If the driver is used as part of the
system startup process in Safe Mode, you need to start the computer using
the Recovery Console in order to access the file. Also try restarting your
computer, and press F8 at the character-based menu that displays the
operating system choices. At the resulting Windows Advanced Options menu,
choose the Last Known Good Configuration option. This option is most
effective when only one driver or service is added at a time.
Overclocking (setting the CPU to run at speeds above the rated
specification) can cause this error. If this has been done to the computer
experiencing the error, return the CPU to the default clock speed setting.
Check the System Log in Event Viewer for additional error messages that
might help pinpoint the device or driver that is causing the error.
Disabling memory caching of the BIOS might also resolve it.
If you encountered this error while upgrading to a new version of Windows,
it might be caused by a device driver, a system service, a virus scanner, or
a backup tool that is incompatible with the new version. If possible, remove
all third-party device drivers and system services and disable any virus
scanners prior to upgrading. Contact the software manufacturer to obtain
updates of these tools. Also make sure that you have installed the latest
Windows Service Pack.
Finally, if all the above steps fail to resolve the error, take the system
motherboard to a repair facility for diagnostic testing. A crack, a
scratched trace, or a defective component on the motherboard can also cause
this error.
--
..
--
Mike said:
Gene, I don't think you understood my last post. This forum is for
technical collaboration, not useless cliche.