0x00000024 NTFS_FILE_SYSTEM

The stop code names ntfs.sys, the driver that lets Windows read and write NTFS volumes, and people reasonably conclude the driver is broken. It very rarely is. ntfs.sys is the component that notices when the disk beneath it returns something impossible, which makes it the messenger far more often than the culprit.

Updated 2026-07-28Stop errorAlso written: 0x24, NTFS FILE SYSTEM, ntfs_file_system, ntfs.sys bsod

What you are looking at

:(

Your PC ran into a problem and needs to restart.

Stop code: NTFS_FILE_SYSTEM

What failed: ntfs.sys

In Event Viewer the matching entries look like this:

Log Name:      System
Source:        BugCheck
Event ID:      1001
Level:         Error

The computer has rebooted from a bugcheck.  The bugcheck was: 0x00000024 (0x00000000001904fb, 0xffffb80f2c1a4530, 0xffffb80f2c1a3d70, 0xfffff80369a1c2b4).

What the error actually means

NTFS is a structured filesystem: a master file table, allocation bitmaps, directory indexes, a journal, all consistent with each other by design. The driver reads those structures constantly and validates what it finds.

When it reads something that cannot be true - a record pointing outside the volume, an index that contradicts the bitmap, data that fails its own checks - the driver has no safe way to continue. Proceeding would mean writing user data based on bookkeeping it knows is wrong.

So it bugchecks. The name on the screen is the component that detected the impossibility, not the component that created it. Microsoft's own cause section leads with disk corruption, bad sectors, and corrupted storage drivers - not with a fault in NTFS itself.

Reading the parameters

Parameter 1 encodes where in the driver's own source the check failed, which is more useful to Microsoft than to you. Parameters 2 and 3 are the actionable ones, when present.

ParameterWhat it holds
1Source file and line number information. The high 16 bits - the first four hex digits after 0x - identify the source file by an internal identifier; the low 16 bits identify the line. Not publicly decodable, but worth recording: a consistent value across crashes means the same internal check is failing every time, which is a coherent single fault rather than random corruption.
2If NtfsExceptionFilter is on the stack, the address of the exception record.
3If NtfsExceptionFilter is on the stack, the address of the context record. Microsoft's documented debugging route is .cxr with this address followed by kb, which reconstructs a usable stack trace.
4Reserved.

What actually triggers it

Storage-dominated, with one non-obvious cause that catches people out.

CauseHow oftenDetail
Bad sectors on the driveCommonMicrosoft names bad blocks directly. If the sectors holding filesystem metadata cannot be read reliably, the driver gets back nonsense and stops. This is the leading explanation.
NTFS structure corruptionCommonDamage to the master file table or index structures, usually from an unclean shutdown, a failing drive, or an interrupted write. Sometimes repairable with chkdsk, sometimes not.
Corrupted storage controller driversOccasionalMicrosoft notes that corrupted SATA or IDE drivers can adversely affect the system's ability to read and write, causing this error. A driver returning bad data looks identical to a disk returning bad data.
Filter drivers that monitor the filesystem continuouslyOccasionalMicrosoft's resolution guidance says to try disabling virus scanners, backup programs and disk defragmenter tools that continually monitor the system. These sit directly in the I/O path and a misbehaving one produces exactly this.
Non-paged pool depletionOccasionalThe one people miss. Microsoft notes that if non-paged pool memory is completely depleted this error can stop the system, and that during indexing a very low pool level lets another driver requiring pool trigger it too. That is a driver leaking memory, not a disk problem at all - and it has a completely different fix.
Failing RAMOccasionalCorrupted metadata in memory produces the same detection. Worth testing when the disk checks out clean.

Narrowing it down

Check the disk first, but keep the pool case in mind if the disk is healthy.

Check drive health before anything else

Read SMART attributes with CrystalDiskInfo. On a hard drive look at reallocated, pending and uncorrectable sector counts; on an SSD look at percentage used, available spare and media errors.

What it tells you

Any non-zero pending or uncorrectable count makes the drive the answer. A clean bill of health moves the investigation to filter drivers and pool exhaustion.

Look for storage errors preceding the crash

Microsoft's guidance says to check Event Viewer for hard drive messages that might pinpoint the device or driver. Filter the System log around each crash for disk, Ntfs and storahci - event IDs 7, 51, 55 and 98 in particular.

What it tells you

Storage errors immediately before the bugcheck confirm the subsystem and often name the specific device. A completely clean log before the crash is more consistent with the pool or filter-driver cases.

Check free space and pool usage

Microsoft recommends 10 to 15 percent free space on the system volume. Also check whether non-paged pool is being consumed - open Task Manager, Performance, Memory, and look at the paged and non-paged pool figures, or use Resource Monitor.

What it tells you

A non-paged pool figure that grows steadily and never falls back is a driver leak, and it points at the pool depletion case rather than the disk. That reframes the whole investigation - see the Driver Verifier fix below rather than chkdsk.

Record parameter 1 across crashes

Take the first parameter from each bugcheck event.

What it tells you

The same value every time means the same internal check is failing - a consistent, specific fault. Values that vary suggest more general corruption, which favours failing hardware over a single damaged structure.

Fixes, cheapest first

Disk first, unless the pool figures pointed elsewhere.

  1. Scan and repair the filesystem

    Effort: 30 minutes to hours · Risk: Low

    Start with a read-only scan, which is safe on a running system:

    chkdsk C: /scan

    If it reports problems, schedule a full repair:

    chkdsk C: /f /r

    That requires a restart, and the /r surface scan takes a long time.

    Watch out

    If SMART already indicates a failing drive, back up before running /r. A surface scan on a dying disk can push it over, and the backup matters more than the repair.

  2. Disable software that monitors the filesystem

    Effort: 20 minutes · Risk: Low

    Microsoft's guidance names this explicitly. Temporarily disable or uninstall third-party anti-virus, continuous backup software, and any third-party defragmenter or disk optimiser that runs in the background.

    Use the vendor's dedicated removal tool for anti-virus rather than the standard uninstaller - these products routinely leave filter drivers behind that the uninstaller misses, and the filter driver is the part that matters here.

  3. Check and update storage drivers

    Effort: 30 minutes · Risk: Low

    Since Microsoft names corrupted storage controller drivers as a cause, check what is actually driving your controller in Device Manager under IDE ATA/ATAPI controllers.

    Update the chipset package from your board vendor. Also check for SSD firmware updates - firmware bugs that corrupt data under specific conditions are real and are fixed this way.

  4. Free up disk space

    Effort: 20 minutes · Risk: None

    Microsoft suggests keeping 10 to 15 percent of the system volume free. A nearly full volume constrains the page file and leaves the filesystem little room to work. Cheap to fix and removes a variable.

  5. Verify system files

    Effort: 30 minutes · Risk: None

    Run sfc /scannow, then DISM /Online /Cleanup-Image /RestoreHealth, then sfc /scannow once more.

  6. Find a pool leak with Driver Verifier

    Effort: Several hours · Risk: Medium

    If non-paged pool usage climbs steadily and the disk is healthy, a driver is leaking allocations. Driver Verifier with Pool Tracking enabled identifies it. Microsoft names Verifier in this bugcheck's resolution guidance.

    Settings and the boot-fail safety flag are in the Driver Verifier guide.

    Watch out

    Chasing the disk when the actual problem is pool exhaustion wastes days, which is why the two-minute pool check in triage is worth doing first.

    Verifier deliberately increases crashes and can cause a boot loop. Run verifier /bootmode resetonbootfail before enabling any checks - it makes Verifier disable itself automatically if the machine fails to start, which removes most of the risk. Your manual exit is Safe Mode followed by verifier /reset. Full settings and the escape route are in the Driver Verifier guide.

  7. Test the memory

    Effort: Overnight · Risk: None

    Worth doing when the drive is healthy and no filter driver is implicated. Disable XMP or EXPO, then run MemTest86 for at least four passes - see the memory testing guide.

When it is the hardware, not Windows

Signals that the drive is failing rather than the filesystem merely being damaged:

Filesystem corruption on a healthy drive is a one-off event with a cause - an unclean shutdown, an interrupted write - and chkdsk genuinely fixes it. Filesystem corruption that keeps coming back is a symptom, not the disease. If you have run chkdsk three times and it keeps finding new errors, stop repairing and start copying data off.

Frequently asked

Can I just replace ntfs.sys?

You can restore it with sfc /scannow, and it is worth ruling out - but a genuinely corrupt ntfs.sys is uncommon, and replacing it will not help if the disk beneath it is returning bad data. The driver is doing its job by refusing to continue with impossible filesystem structures. Check the drive first; the file itself is rarely the problem.

How is this different from KERNEL_DATA_INPAGE_ERROR?

Different detection points on the same path. 0x7A means a read from the paging file failed outright and carries an I/O status code naming why. 0x24 means the read succeeded but what came back was not valid NTFS. Both usually indicate a storage problem, and seeing both on one machine is a strong combined signal for a failing drive.

The disk is healthy and chkdsk finds nothing. What now?

Two directions. Check non-paged pool usage over time - if it climbs and never recovers, a driver is leaking and that is Microsoft's documented alternative cause, with a completely different fix. And disable third-party anti-virus, backup and defragmentation software, which Microsoft's guidance names specifically because they sit in the filesystem I/O path. If both come back clean, test the memory.

Should I convert to a different filesystem?

No. NTFS is not the problem, and Windows requires it for the system volume anyway. This bugcheck reflects something underneath the filesystem failing, or something layered on top interfering - neither of which changes by using a different format. If the drive is failing, replace the drive.