Flamingo Raises $4.5M Seed Round

Skip to content

Updated: October 2026

A blue screen that says WHEA_UNCORRECTABLE_ERROR tells you the crash came from hardware reporting a fault, but not which part. The good news is that Windows writes down which component complained, and that record narrows the search from "the whole PC" to one or two parts. This guide shows how to read that record, test the likely causes in the cheapest order, and decide when a WHEA_UNCORRECTABLE_ERROR means a driver fix and when it means an RMA.

What Stop Code 0x124 Means

WHEA stands for Windows Hardware Error Architecture. It's the channel the CPU, chipset, memory controller and PCI Express devices use to report errors to Windows. Microsoft's bug check reference for 0x124 is blunt: the code "indicates that a fatal hardware error has occurred."

The stop code itself is the same on every machine. The useful part is the first parameter, which names the type of error source. You'll find it in the minidump, in the BugCheck event in the System log, or in tools like WinDbg.

Parameter 1Error sourceWhere it points
0x0Machine check exceptionCPU, cache or memory controller. Parameters 3 and 4 hold the MCi_STATUS value for the machine check bank
0x3Non-maskable interruptPlatform hardware, check the error record for the device
0x4PCI Express errorA PCIe device: GPU, NVMe drive, network card, or the slot
0x5Generic hardware errorFirmware-reported, check the error record
0x6 / 0x7Initialization or boot errorHardware that failed during startup
0x10Device driver error sourceA driver reported the hardware fault

Parameter 2 is the address of the full WHEA error record. In WinDbg, !errrec with that address prints the record, and !analyze -v summarizes it.

Microsoft's own guidance ranks the causes. The bug check is "typically related to physical hardware failures": heat, defective hardware, memory, or a processor that is failing. A driver is listed as "less likely, but possible." Start your triage with that order in mind.

Reading the WHEA-Logger Event

You don't need a debugger to get most of this. Windows saves the error record to the System event log under the source WHEA-Logger, and the fatal one is Event ID 18. Pull every WHEA entry on a machine with a short PowerShell query:

powershell
Get-WinEvent -FilterHashtable @{LogName='System'; ProviderName='Microsoft-Windows-WHEA-Logger'} -MaxEvents 50 |
  Select-Object TimeCreated, Id, LevelDisplayName, Message | Format-List

An Event 18 message reads like this: "A fatal hardware error has occurred. Reported by component: Processor Core. Error Source: Machine Check Exception. Error Type: Cache Hierarchy Error." Below that you'll see a Processor APIC ID, and the Details tab carries the bank number and raw status.

Read four fields. Reported by component tells you the subsystem: Processor Core, Memory, PCI Express Root Port. Error Source repeats Parameter 1 in words. Error Type narrows it further, for example a cache hierarchy error or a bus error. Processor APIC ID names the logical core.

The APIC ID is the field people skip. If three crashes over two weeks all report the same APIC ID, you're looking at one core, and that points at the CPU itself. If the ID changes every time, the fault is shared: voltage, memory, heat or an overclock.

WHEA-Logger also records corrected errors, which Windows fixed without crashing. They show up as warnings (Event 17 for corrected hardware errors, and Event 19 on many systems for corrected machine checks). A trickle of corrected errors on the same component before the first blue screen is the hardware giving notice.

Triage by Cause, Cheapest Test First

Work from free and reversible to expensive and slow. Each step either clears the crash or rules out a cause.

1. Overclock and XMP. Load BIOS defaults before anything else. Intel's support article for this error lists "voltage changes" among the causes, and a CPU overclock, an undervolt or an aggressive memory profile all change voltages. XMP is the usual suspect on gaming and workstation builds, because it runs RAM above the speed the CPU's memory controller is validated for. Our guide to XMP in BIOS covers what the profile changes and how to step it back.

2. Thermals. Check fans, heatsink contact and dust. If crashes arrive after a few minutes of load and never at idle, heat is a strong candidate. Microsoft's guidance names this directly: confirm cooling works before blaming parts.

3. Power and voltage. A failing power supply produces WHEA errors that jump between components, because every part sees the same unstable rail. If the Event 18 component changes from crash to crash, swap in a known-good PSU before replacing anything else.

4. Memory. Run a full memory test at stock settings, not with XMP on. Test one stick at a time if the machine has more than one. Our walkthrough of Windows Memory Diagnostic shows where the results land and how to read them.

5. BIOS and firmware. Vendors ship microcode and memory-training fixes through BIOS updates, and some WHEA crashes stop after one. Update only after the steps above, and follow the vendor's process. Our BIOS update guide covers the risks and the order to do it in.

6. Storage and PCIe devices. If the component is a PCI Express root port, reseat the GPU or NVMe drive, try another slot, and update the device firmware. Intel's list of causes includes hard drives alongside the CPU and memory.

7. Drivers. Last, not first. Roll back any driver installed shortly before the crashes started, update chipset and storage drivers from the device vendor, and run Windows Update. Parameter 1 = 0x10 is the case where a driver is named from the start.

8. CPU. Once everything above is clean and the same core keeps reporting, run the CPU vendor's diagnostic. Intel publishes its Processor Diagnostic Tool for exactly this step.

Here's a Windows 10 case from r/techsupport.

The WHEA uncorrectable error on Windows 11 follows the same logic. An upgrade changes drivers and sometimes firmware settings at the same time, which is why crashes that start right after one deserve a driver rollback and a BIOS defaults check together.

This walkthrough covers the Windows-side fixes, useful once the hardware checks above come back clean.

A Decision Table for the WHEA Uncorrectable Error Fix

Match what you see to the likely cause, then run that test first.

What you seeLikely causeFirst test
Crashes under load, XMP or overclock enabledMemory profile or CPU overclockLoad BIOS defaults, retest for a week
Crashes after minutes of load, never at idleHeatCheck temperatures, fans and heatsink contact
Event 18 component changes between crashesPower supply or voltageSwap in a known-good PSU
Error type points at memory, crashes at stockRAMMemory test one stick at a time
Same Processor APIC ID every timeOne CPU coreCPU vendor diagnostic at stock settings
Component is a PCI Express root portGPU, NVMe or other PCIe cardReseat, change slot, update firmware
Started right after a driver or Windows updateDriverRoll back the driver, update chipset drivers
Parameter 1 is 0x10Driver-reported hardware faultUpdate or replace the named driver

When It's RMA Time

Send a part back when three things are true. The machine runs at BIOS defaults with no overclock and XMP off. The BIOS is current. And WHEA-Logger keeps naming the same component after the other suspects have been swapped or cleared.

Before the RMA, collect the evidence. Export the WHEA-Logger events, keep the minidumps from C:\Windows\Minidump, and save the diagnostic tool results. A return request is easier to make when it shows the same Event 18 component and APIC ID across several crashes at stock settings.

If you manage many machines, the same PowerShell query run as a script across a client's devices turns up corrected errors before they become blue screens. OpenFrame can run it across a client's fleet and collect the output in one place.

The Short Version

WHEA_UNCORRECTABLE_ERROR is stop code 0x124, and it means hardware reported a fatal error. Parameter 1 and the WHEA-Logger Event 18 tell you which component, and the Processor APIC ID tells you whether it's one core or something shared. Reset to defaults, check heat and power, test memory, update the BIOS, and only then chase drivers.

For every other stop code, our guide to the blue screen of death covers reading dumps and finding the driver behind a crash.

Dmytro Koval

Dmytro Koval

Head of Product Engineering

Hi! My name is Dmytro, but everyone calls me Dima. I’m a Software Developer and together with the development team, I help bring Flamingo to life — putting it on its feet from a technical perspective. Originally from Lviv, Ukraine 🇺🇦, but currently based in Spain, where I’ve been enjoying the blend of great weather, culture, and nature. I’m passionate about the mountains and love traveling — exploring new places and cultures really inspires me. These experiences constantly recharge me and give me a fresh perspective, both personally and professionally.

Related Content

Blog Posts

Product Releases

Podcasts

Webinars

Case Studies

Events

Onboarding Guides

Frequently Asked Questions

WHEA_UNCORRECTABLE_ERROR

Yes, but it is the less likely cause. Microsoft's bug check reference says 0x124 is typically related to physical hardware failures and lists a driver as less likely, but possible. When Parameter 1 is 0x10, the error came from a device driver error source, and updating or rolling back that driver is the first test.
Often, yes. Resetting the BIOS to defaults, turning off XMP or an overclock, fixing cooling and updating the BIOS clear a large share of cases without new parts. Replace a component only when the machine still crashes at stock settings and WHEA-Logger keeps naming the same part.
Not on its own. A machine check error can come from the CPU, but also from memory, heat, unstable voltage or an overclock. Check the Processor APIC ID in WHEA-Logger Event 18: the same ID across several crashes at stock settings points at one core, while changing IDs point at a shared cause.
Treat it as a machine on borrowed time. Every crash is an unclean shutdown, so unsaved work is lost and open files can be damaged. Back up the data first, then run the triage steps, starting with BIOS defaults and a memory test.

About OpenFrame

OpenFrame isn't built to plug into your stack. It replaces it. Instead of duct-taping a dozen tools together (RMM, MDM, SIEM, patching, remote access, each its own login and bill), we bundle it into one unified platform: RMM, MDM, monitoring, automation, remote access, patch management, security monitoring, and ticketing, plus built-in AI copilots. So "does it integrate with X?" usually means: you won't need X anymore.
Most platforms give you one piece and expect you to bolt the rest on. OpenFrame unifies the whole stack in one place, with AI copilots built in. Fewer logins, fewer bills, less duct tape.
In the cloud, on US soil. Your data stays stateside.
Both. It's built for MSPs and MSSPs alike.

MSP AI Agents

Yes. In production MSP shops today, 10% to 25% of tickets close before a human opens them. Thread alone has processed 173 million tickets across 750-plus MSP partners at 96% triage accuracy, handing back 490,000-plus technician hours. Agents own the low-risk, high-volume work (password resets, MFA enrollment, known installs, onboarding and offboarding) and flag anything that touches production data or needs judgment for a human to take.
On a five-person desk, reported deployments show $78,000 to $130,000 in annual direct labor savings, roughly 30% fewer escalations, and 15% to 20% better SLA compliance. Broader MSP adoption data adds ticket handling time cut by 45% and five to 12 points of margin, all from reclaimed capacity rather than headcount cuts.