Bug Check 0x99: INVALID_REGION_OR_SEGMENT – Windows Blue Screen Error
Quick Answer Windows Bug Check 0x00000099 (INVALID_REGION_OR_SEGMENT) is a Blue Screen of Death (BSOD) error that occurs when the Windows kernel detects an i...
Quick Answer
Windows Bug Check 0x00000099 (INVALID_REGION_OR_SEGMENT) is a Blue Screen of Death (BSOD) error that occurs when the Windows kernel detects an invalid set of parameters passed to either ExInitializeRegion or ExInterlockedExtendRegion.
This error is associated with kernel-level memory-region operations and may involve an incorrectly implemented kernel-mode driver. The stop code alone does not identify the faulty driver or establish a hardware failure. Crash dump analysis and investigation of the relevant kernel call stack are recommended to determine the underlying cause.
What Is INVALID_REGION_OR_SEGMENT?
INVALID_REGION_OR_SEGMENT is Windows Bug Check 0x00000099. It indicates that a Windows kernel routine responsible for region management was called with invalid parameters.
The two routines identified in Microsoft's bug check documentation are:
- ExInitializeRegion: A kernel routine associated with initializing a memory region.
- ExInterlockedExtendRegion: A kernel routine associated with extending a memory region using interlocked operations.
These routines are relevant to Windows kernel-mode programming. An invalid call can cause Windows to stop execution to protect the operating system from continuing with an invalid kernel operation.
Microsoft does not document bug check parameters for this stop code. Consequently, there are no documented parameter values that can independently identify the cause of the crash.
Common Causes of Bug Check 0x99
The official bug check definition identifies the invalid parameter condition but does not provide an exhaustive list of root causes. The following are possible areas to investigate:
- Faulty kernel-mode drivers: A driver may pass invalid information to a Windows kernel routine.
- Driver programming defects: Incorrect initialization or handling of memory-region information may result in an invalid operation.
- Driver compatibility problems: An incompatible or defective third-party driver may introduce kernel-level failures.
- Memory corruption: Previously corrupted memory structures may affect parameters passed to a kernel routine.
- Recent driver changes: A newly installed or updated driver may introduce a defect or compatibility problem.
These possibilities should be investigated using crash dump evidence rather than treated as confirmed causes.
Symptoms of INVALID_REGION_OR_SEGMENT
A computer experiencing this bug check may display the following symptoms:
- Windows displays a Blue Screen of Death.
- The stop code appears as
INVALID_REGION_OR_SEGMENT. - The hexadecimal bug check value is
0x00000099. - The computer unexpectedly restarts or shuts down.
- Crashes occur repeatedly during particular operations or workloads.
- Windows generates a crash dump file after the system failure.
These symptoms are not exclusive to Bug Check 0x99. Confirm the actual stop code before following the troubleshooting procedures.
How to Fix Windows Bug Check 0x99
The appropriate troubleshooting method depends on the underlying kernel operation and the available crash information. Start with basic checks and proceed to advanced debugging when necessary.
1. Check Recently Installed Drivers and Hardware
Identify whether the blue screen started after installing or updating a device driver, peripheral, or hardware component.
- Right-click the Windows Start button.
- Select Device Manager.
- Expand the relevant hardware categories.
- Check for devices displaying warning symbols.
- Open the device properties and review its driver information and device status.
If a recent driver update coincides with the beginning of the crashes, consider using the Roll Back Driver option when available.
Alternatively, obtain an appropriate compatible driver from the device manufacturer's official website.
Do not assume that a device with normal Device Manager status has a completely fault-free driver.
2. Install Applicable Windows and Driver Updates
Check whether relevant Windows updates or corrected device drivers are available.
- Open Settings.
- Select Windows Update.
- Click Check for updates.
- Review available updates and install applicable ones.
- Check the manufacturer's website for updated hardware drivers when necessary.
Restart Windows if required. If the problem began immediately after a particular driver update, investigate the possibility of reverting to a previously working version instead of automatically installing another version.
3. Check Windows Crash Dump Files
Windows can create memory dump files when a blue screen occurs. These files contain diagnostic information that can help investigate the kernel failure.
Common crash dump locations include:
C:\Windows\Minidump– Small memory dump files.C:\Windows\MEMORY.DMP– Kernel, automatic, or complete memory dump, depending on system configuration.
To review the dump configuration:
- Press Windows + R.
- Type
sysdm.cpland press Enter. - Open the Advanced tab.
- Under Startup and Recovery, select Settings.
- Locate the Write debugging information option.
- Review the selected memory dump type.
If dump collection is required, select an appropriate dump type and ensure sufficient disk space and suitable paging-file configuration.
Administrator privileges may be required to change these settings. Memory dumps can contain sensitive information from system memory, so protect them and share them only through secure support channels.
4. Analyze the Crash Dump Using WinDbg
WinDbg is Microsoft's debugging tool for analyzing Windows crashes and kernel-mode failures. It can help investigate the call stack, bug check information, and loaded drivers.
- Install WinDbg using Microsoft's official debugging tools documentation.
- Open WinDbg.
- Select File > Open Crash Dump.
- Select the relevant memory dump file.
- Allow the debugger to load the required symbols.
- Enter the following command in the debugger command window:
!analyze -v
This command requests detailed automated crash analysis.
Additional commands that may help inspect the crash include:
.bugcheck
lm
The commands provide the following information:
!analyze -v– Displays detailed bug check analysis and available diagnostic information..bugcheck– Displays the bug check code and its parameters.lm– Lists loaded modules, including kernel-mode drivers.
For Bug Check 0x99, Microsoft does not document any bug check parameters. Therefore, do not expect a special set of parameter values to identify the faulty component.
Examine the available call stack, loaded modules, symbols, and surrounding driver activity. A module appearing in the crash report is not automatically the original cause of the failure.
A small memory dump may not contain sufficient information for a complete investigation. A kernel memory dump or additional debugging may be required.
5. Investigate the Relevant Kernel-Mode Driver
If the crash occurs on a system using a custom or third-party kernel-mode driver, investigate the code responsible for calling the affected routines.
Review the following areas:
- Whether the correct parameters are passed to the kernel routine.
- Whether memory-region information is initialized correctly.
- Whether the relevant memory structures remain valid during the operation.
- Whether earlier memory corruption affects the data being passed.
- Whether synchronization requirements are followed for interlocked operations.
Compare the driver implementation with the applicable Windows Driver Kit documentation. The actual correction depends on the failing operation and its surrounding code.
Advanced Troubleshooting for Driver Developers
Use Driver Verifier for Driver Testing
Driver Verifier is a Windows diagnostic utility that monitors kernel-mode drivers and can detect certain programming errors and illegal driver operations.
It may be useful when investigating a suspected third-party driver, but it is not a guaranteed solution for INVALID_REGION_OR_SEGMENT.
To inspect the existing Driver Verifier configuration, open Command Prompt as administrator and execute:
verifier /querysettings
This command displays the current verification configuration without enabling additional tests.
If Driver Verifier causes startup problems, enter Windows Safe Mode and open an elevated Command Prompt. Run:
verifier /reset
This resets Driver Verifier settings. Restart the computer afterward.
Consult Microsoft's Driver Verifier documentation before selecting drivers or verification options. Avoid enabling verification indiscriminately across all drivers on a production computer.
How to Verify Whether the Error Is Resolved
After applying a relevant driver correction or configuration change, monitor the system for further failures.
- Confirm that Windows starts normally.
- Check whether the workload that previously triggered the crash can now run without errors.
- Review newly generated crash dump files, if any.
- Compare subsequent stop codes with the original Bug Check 0x99.
- For driver developers, verify that the corrected implementation follows the documented kernel routine requirements.
A successful restart alone does not prove that the original problem has been permanently resolved. The absence of recurring crashes under the relevant conditions, supported by diagnostic evidence, provides greater confidence.
When to Contact Technical Support
Contact the computer manufacturer, hardware vendor, or responsible driver developer if:
- Windows continues to experience Bug Check 0x99.
- The crash dump points to a third-party kernel-mode component requiring investigation.
- The computer cannot start normally after a driver change or debugging operation.
- The error affects a production server or business-critical system.
- The available diagnostic information is insufficient to identify the invalid kernel operation.
Provide the Windows version and build, exact stop code, recent system changes, crash frequency, and relevant debugging information. Share memory dumps only through an authorized secure support channel.
Frequently Asked Questions
What is Windows error 0x00000099?
It is a Windows bug check named INVALID_REGION_OR_SEGMENT. It occurs when the kernel detects an invalid parameter set passed to ExInitializeRegion or ExInterlockedExtendRegion.
Is INVALID_REGION_OR_SEGMENT a hardware problem?
Not necessarily. Microsoft documents this as an invalid-parameter condition involving Windows kernel routines. Memory corruption or hardware problems may be investigated if other diagnostic evidence supports those possibilities.
Does Bug Check 0x99 identify the faulty driver?
No. The stop code identifies the invalid kernel operation but does not specify which driver caused it. Crash dump analysis may help identify the relevant driver or kernel call path.
Does INVALID_REGION_OR_SEGMENT have bug check parameters?
Microsoft's official documentation does not specify bug check parameters for 0x00000099.
Can updating Windows fix Bug Check 0x99?
An applicable Windows or driver update may help if it addresses a relevant defect or compatibility problem. However, installing updates is not a documented guaranteed fix for this particular bug check.
Can WinDbg diagnose INVALID_REGION_OR_SEGMENT?
Yes. WinDbg can examine crash dumps, display bug check information, inspect kernel call stacks, and list loaded modules. The available information depends on the dump type and debugging symbols.
Should I reinstall Windows to resolve error 0x99?
Reinstalling Windows should not be the first troubleshooting step. Investigating the kernel-mode driver activity and crash dump evidence is generally more appropriate before considering an operating-system reinstallation.
Sources
- Microsoft Learn – Bug Check 0x99: INVALID_REGION_OR_SEGMENT
- Microsoft Learn – Bug Check Code Reference
- Microsoft Learn – Analyze a Kernel-Mode Dump File by Using WinDbg
- Microsoft Learn – Using the !analyze Extension
- Microsoft Learn – Driver Verifier
- Microsoft Learn – Generate a Kernel or Complete Crash Dump
Was this guide useful?
Your answer helps us keep BISONKB accurate and practical.