Skip to content
0x000000B8ATTEMPTED_SWITCH_FROM_DPCStop codeWidely reported

ATTEMPTED_SWITCH_FROM_DPC (0xB8): what it means and how to fix it

Updated Oct 25, 2026 · Checked against Microsoft documentation · How this page is made

Quick answer

The ATTEMPTED_SWITCH_FROM_DPC stop code (value 0x000000B8) occurs when a deferred procedure call routine attempts an illegal operation such as a wait or thread switch. This crash is usually triggered by a malfunctioning device driver or incompatible hardware. Inspecting Device Manager for problem devices and updating suspect drivers is the first troubleshooting step.

What it means

Deferred Procedure Calls (DPCs) are background routines used by Windows drivers to handle tasks after an interrupt occurs. When hardware finishes an operation, such as an adapter transferring data, it generates an interrupt. To keep the computer responsive, the hardware driver delegates the rest of the processing to a DPC routine.

Windows enforces strict execution rules on DPC routines. Because DPCs execute at an elevated priority level, they must run to completion quickly without pausing. They are not permitted to switch execution contexts, attach to another process, or enter a wait state.

Why bug check 0x000000B8 occurs

This stop code appears when a DPC routine violates operating system execution rules. Specifically, Windows detects that a DPC routine attempted an illegal operation such as a wait operation, an attach process, or a yield.

Because waiting or yielding inside a DPC routine disrupts processor scheduling and threatens kernel stability, Windows halts execution immediately. This stop check uses four diagnostic parameters:

  • Parameter 1: The original thread causing the failure.
  • Parameter 2: The new thread.
  • Parameter 3: The stack address of the original thread.
  • Parameter 4: Reserved.

A stack trace of the crash points to the specific code in the original DPC routine that attempted the illegal operation. For everyday computer use, this error points to third-party drivers—such as Wi-Fi adapters, USB controllers, or storage devices—that contain programming flaws or are incompatible with the current Windows environment.

Common causes

  • A device driver attempted an illegal wait operation or yield from within a DPC routine.
  • A driver routine attempted an attach process operation while executing a DPC.
  • A recently installed device driver or system service contains software errors.
  • Newly connected hardware or peripheral devices are causing driver execution conflicts.
  • A virus or malware infection damaged the Master Boot Record or hard disk data.

How to fix it

Safest and most likely fixes first. Readers' answers to "Did this fix it?" reorder this list over time.

  1. Check Device Manager for problem hardware

    Use this first to see if Windows has flagged an incompatible or failing device driver.

    1. Right-click the Start menu and select Device Manager.
    2. Scan the hardware categories for any device marked with a yellow exclamation point.
    3. Right-click the flagged device and choose Properties.
    4. Open the Events tab to check the logged driver events for failures.
    5. Return to the Driver tab and select Update driver.
    Did this fix it?
  2. Examine the Event Viewer System log

    Use this to identify which service or driver failed immediately before the blue screen.

    1. Press Windows Key + R, type eventvwr.msc, and press Enter.
    2. Expand Windows Logs in the left panel and select System.
    3. Look for critical error messages recorded in the exact time window of the crash.
    4. Read the error descriptions to find the specific driver or hardware device responsible.
    Did this fix it?
  3. Disconnect recently added hardware

    Use this if the crash began appearing after connecting new peripherals or internal components.

    1. Shut down the computer completely.
    2. Unplug recently added USB devices, network adapters, or internal expansion cards.
    3. Power on the computer to see if the operating system runs stably.
    4. Visit the hardware manufacturer's support site to download available patches or updated drivers before reconnecting the hardware.
    Did this fix it?
  4. Run a full virus detection scan

    Use this to eliminate disk corruption caused by boot-sector malware.

    1. Open your virus detection program.
    2. Ensure the scan configuration is set to check all hard disks formatted for Windows.
    3. Verify that the program settings include a check of the Master Boot Record for infections.
    4. Start the scan and follow the prompts to remove any identified threats.
    Did this fix it?
  5. Inspect memory dump files using WinDbg

    Use this advanced step if general troubleshooting does not reveal the offending driver.

    1. Open WinDbg with administrative privileges.
    2. Open the kernel memory dump file created during the system crash.
    3. Run the !analyze debugger extension to generate diagnostic crash information.
    4. Review the stack trace output to locate the code in the original DPC routine that caused the error.
    Did this fix it?

Is it just you?

25+ Microsoft Q&A threads discuss this. Most recent activity:

Checked Oct 23, 2026. Refreshed automatically every few days.

Sources

Frequently asked questions

What is the meaning of ATTEMPTED_SWITCH_FROM_DPC?

It means a deferred procedure call (DPC) routine executed an illegal action, such as attempting to wait, yield, or switch to another thread. Windows halts the system to avoid kernel corruption.

What does bug check value 0x000000B8 refer to?

Value 0x000000B8 is the exact hexadecimal stop code for ATTEMPTED_SWITCH_FROM_DPC in Windows.

Can bad hardware cause this blue screen?

Yes. Newly connected or failing hardware can trigger improper routines in its driver, leading to illegal DPC operations.

What do the four parameters represent on a 0xB8 crash screen?

Parameter 1 is the original failing thread, Parameter 2 is the new thread, Parameter 3 is the stack address of the original thread, and Parameter 4 is reserved.