Skip to content
WindowsAdvanced

0x000000E6 DRIVER_VERIFIER_DMA_VIOLATION – Causes, Meaning and Troubleshooting

Quick Answer DRIVER_VERIFIER_DMA_VIOLATION (Stop Code 0x000000E6) is a Windows Blue Screen of Death (BSOD) error associated with an invalid Direct Memory Acc...

BI
Bison Technical Team Enterprise IT specialists
Updated 09 Nov 2026 15 min read 0 total views
Structured technical guidanceSafety notes included where requiredSources listed below

Quick Answer

DRIVER_VERIFIER_DMA_VIOLATION (Stop Code 0x000000E6) is a Windows Blue Screen of Death (BSOD) error associated with an invalid Direct Memory Access (DMA) operation, a DMA verification failure, or an IOMMU-detected DMA violation.

DMA allows hardware devices to transfer data directly to or from system memory without requiring the processor to handle every individual data transfer. Windows monitors certain driver operations to detect incorrect DMA usage that could cause memory corruption or system instability.

Advertisement

This error can occur when a device driver incorrectly manages DMA buffers, adapter channels, map registers or memory mappings. It can also indicate an IOMMU-detected violation involving a hardware device.

Possible troubleshooting steps include:

  • Identify the driver or device associated with the crash.
  • Update or roll back recently changed device drivers.
  • Install appropriate chipset and firmware updates from the computer manufacturer.
  • Check Driver Verifier settings and disable them if they were enabled unintentionally.
  • Analyse the Windows crash dump to identify the specific DMA violation.

Important: Stop code 0xE6 does not identify one particular faulty driver or hardware component. The exact cause depends on the bug check parameters and available crash-dump information.

What Is DRIVER_VERIFIER_DMA_VIOLATION?

DRIVER_VERIFIER_DMA_VIOLATION is a Windows bug check with the hexadecimal value 0x000000E6. It is associated with violations detected by DMA Verification, a component of Windows Driver Verifier.

Driver Verifier is a Windows diagnostic utility that monitors kernel-mode drivers and checks whether they follow the operating system's driver requirements. Its DMA Verification feature specifically monitors how drivers use Direct Memory Access routines.

When an invalid DMA operation is detected, Windows can stop the system to prevent further memory corruption or instability.

Microsoft documents this error as a bug check for Driver Verifier DMA Verification violations. However, the major bug check code can also be observed when Driver Verifier is not enabled, so the presence of this stop code should not be treated as proof that a user manually enabled Driver Verifier.

Understanding Direct Memory Access (DMA)

Direct Memory Access (DMA) is a hardware-supported mechanism that allows a device to transfer data directly to or from system memory without requiring the CPU to process every part of the transfer.

For example, storage controllers, network adapters and other hardware devices can use DMA to transfer data efficiently.

The operating system and device drivers must coordinate these transfers correctly to ensure that devices access only the appropriate memory regions.

What Is DMA Verification?

DMA Verification is a feature of Windows Driver Verifier that monitors how drivers use DMA-related routines. It attempts to identify programming errors that could cause memory corruption, invalid memory access or incorrect DMA resource management.

It can detect problems such as:

  • Incorrect allocation or release of DMA resources.
  • Using invalid DMA buffers.
  • Freeing DMA resources more than once.
  • Using DMA adapter channels incorrectly.
  • Performing DMA operations with invalid memory mappings.
  • Accessing memory outside the permitted DMA buffer.

DMA Verification is particularly useful when testing hardware drivers that directly use Windows DMA interfaces.

What Is IOMMU?

An Input-Output Memory Management Unit (IOMMU) is a hardware component that manages and translates memory addresses used by input/output devices.

It helps control which areas of system memory a device can access. This provides memory isolation and helps protect the system against invalid or unauthorized DMA access.

Windows uses DMA remapping technologies to improve device memory protection and compatibility. An IOMMU-detected DMA violation can also result in the 0xE6 bug check.

Common Causes of DRIVER_VERIFIER_DMA_VIOLATION

The following are possible causes of this error. The actual cause must be identified using the bug check parameters, crash dump and device-driver information.

1. Faulty or Incompatible Device Drivers

A device driver may incorrectly manage DMA operations or fail to follow Windows driver requirements.

This can happen with an outdated, corrupted, incompatible or defective driver. Recently installed or updated drivers are worth investigating when the error starts appearing after a software or hardware change.

2. Incorrect DMA Buffer Management

Drivers must allocate, map, use and release DMA buffers correctly. If a driver accesses memory outside an allocated buffer or releases resources incorrectly, Windows may detect a DMA violation.

Examples include double-freeing a DMA buffer, using an invalid memory address or attempting a DMA transfer without the required memory locking.

3. DMA Remapping or IOMMU Problems

DMA remapping allows Windows to control the memory addresses accessible to a hardware device.

Problems involving a device driver, DMA remapping configuration or hardware memory-access behavior can result in an IOMMU-detected DMA violation.

This is particularly relevant when the crash dump identifies bug check parameter 1 as 0x26.

4. Recently Installed Hardware

A newly connected or installed device may introduce an incompatible driver or a DMA-related compatibility problem.

Potential devices to investigate include:

  • PCIe expansion cards.
  • Network adapters.
  • Wireless adapters.
  • External Thunderbolt devices.
  • Storage controllers.
  • Other PCIe-connected hardware.

These devices are examples for investigation, not confirmed causes of every 0xE6 error.

5. Incorrect Driver Resource Management

Windows drivers must manage DMA adapter channels, map registers, scatter/gather lists and common buffers according to the operating system's requirements.

Incorrect allocation, reuse, flushing or release of these resources can trigger DMA Verification violations.

6. Hardware or Firmware Compatibility Issues

In some situations, the problem may involve device firmware, BIOS/UEFI configuration or hardware behavior.

These possibilities should be investigated when the dump indicates an IOMMU fault or when the crash consistently occurs while using a particular device.

Symptoms of the 0x000000E6 Blue Screen Error

When this error occurs, Windows displays a blue screen and stops normal operation.

Common symptoms may include:

  • Unexpected system restarts.
  • Blue Screen of Death with the stop code DRIVER_VERIFIER_DMA_VIOLATION.
  • Repeated crashes during startup.
  • Crashes when connecting or disconnecting a particular device.
  • System instability during hardware-intensive operations.
  • Crash dump files being generated after a system failure.
  • Repeated crashes after installing or updating a device driver.

The symptoms depend on the driver or device involved and the circumstances under which the DMA violation occurs.

Understanding the 0xE6 Bug Check Parameters

The four bug check parameters provide diagnostic information about the violation.

According to Microsoft's documentation, Parameter 1 is particularly important because it identifies the specific DMA violation. The remaining parameters provide additional information depending on the violation type.

Parameter 1 Meaning
0x00 Miscellaneous DMA error, including certain map-register problems.
0x01 Performance counter decreased unexpectedly.
0x02 Performance counter increased too quickly.
0x03 Driver freed too many DMA common buffers, potentially freeing the same buffer twice.
0x04 Driver freed too many DMA adapter channels.
0x05 Driver freed too many DMA map registers.
0x06 Driver freed too many DMA scatter/gather lists.
0x07–0x0A Driver released a DMA adapter while associated resources were still outstanding.
0x0B–0x0C Too many adapter channels or map registers were allocated.
0x0D Driver did not flush its adapter buffers correctly.
0x0E Driver attempted a DMA transfer without properly locking the buffer.
0x0F Driver or hardware wrote outside an allocated DMA buffer or corrupted associated memory.
0x10 Driver freed map registers while some were still mapped.
0x11 Too many outstanding adapter reference counts.
0x13–0x14 Driver called a DMA routine at an improper interrupt request level (IRQL).
0x15 Driver attempted to allocate too many map registers.
0x16 Driver attempted to flush a buffer that was not mapped.
0x18 Driver attempted a DMA operation using an already released adapter.
0x19 Driver passed a null DMA_ADAPTER value to a HAL routine.
0x1B Driver supplied an address outside the bounds of the specified memory descriptor list (MDL).
0x1D Driver attempted to map an address range that was already mapped.
0x1E Driver called the obsolete HalGetAdapter function.
0x1F Invalid DMA buffer or incorrect buffer address, length or alignment.
0x20–0x25 Other DMA mapping, buffer, channel or device-description violations.
0x26 IOMMU detected a DMA violation.

Note: This table summarizes documented Parameter 1 values. It is not a complete description of all four parameters. Some parameter meanings and additional details are specific to individual violation codes.

What Does Parameter 1 = 0x26 Mean?

Parameter 1 value 0x26 specifically indicates that the IOMMU detected a DMA violation.

Microsoft documents the remaining parameters as follows:

  • Parameter 2: Device Object of the faulting device.
  • Parameter 3: Faulting information, usually the physical address associated with the fault.
  • Parameter 4: Hardware-specific fault type.

This information can help advanced users and driver developers identify the device associated with the invalid DMA access.

How to Fix DRIVER_VERIFIER_DMA_VIOLATION (0x000000E6)

There is no single solution for every 0xE6 crash. Follow the troubleshooting steps below in order, starting with the safest diagnostic actions.

1. Identify the Driver or Device Causing the Error

Before changing drivers or BIOS settings, try to identify which device is associated with the crash.

  1. Restart Windows if the computer can boot normally.
  2. Open Device Manager by pressing Windows + X and selecting Device Manager.
  3. Look for devices displaying a warning symbol.
  4. Check recently installed or updated hardware drivers.
  5. Review whether the crash occurs when using a particular device.

Device Manager warnings do not necessarily identify the driver responsible for the BSOD. For more accurate diagnosis, analyse the crash dump using Windows debugging tools.

2. Disable Driver Verifier If It Was Enabled Unintentionally

Driver Verifier is designed primarily for driver testing and debugging. Microsoft warns that running it can cause system crashes, so it should be used carefully.

If you intentionally enabled Driver Verifier for testing, or suspect that an existing verification configuration is contributing to the crashes, you can reset its settings.

Using Command Prompt:

  1. Open Command Prompt as Administrator.
  2. Enter the following command:
verifier /reset
  1. Restart the computer.
  2. Check whether the system starts normally.

This command clears the current Driver Verifier settings. It does not repair an underlying faulty driver. If the crash is caused by a genuine DMA or IOMMU problem outside the expected Driver Verifier configuration, further investigation is still necessary.

Alternative method using the graphical interface:

  1. Press Windows + R.
  2. Type verifier.exe and press Enter.
  3. Select Delete existing settings.
  4. Select Finish.
  5. Restart Windows.

If Windows cannot start normally, try entering Windows Recovery Environment and starting Safe Mode before running the reset command from an elevated Command Prompt.

3. Update the Device Drivers

Outdated or incompatible device drivers may contain DMA-related bugs. Installing a suitable updated driver can resolve problems caused by a defective driver version.

  1. Open Device Manager.
  2. Expand the relevant hardware category.
  3. Right-click the suspected device.
  4. Select Update driver.
  5. Select Search automatically for drivers.
  6. Follow the instructions if an update is available.

You can also visit the official support website of your computer or hardware manufacturer to obtain the latest compatible drivers.

Give particular attention to chipset, network, wireless, storage and other recently changed device drivers when the crash evidence points towards those components.

4. Roll Back a Recently Updated Driver

If the blue screen started immediately after a driver update, the new version may be incompatible with your hardware or Windows configuration.

  1. Open Device Manager.
  2. Locate the device associated with the recent driver change.
  3. Right-click it and select Properties.
  4. Open the Driver tab.
  5. Select Roll Back Driver, if available.
  6. Follow the instructions and restart the computer.

If the Roll Back Driver option is unavailable, obtain a compatible previous driver version from the manufacturer's official support website.

5. Disconnect Recently Added External Devices

A recently connected external device may introduce a driver or hardware compatibility issue.

To investigate:

  1. Shut down the computer.
  2. Disconnect non-essential external devices.
  3. Reconnect only the keyboard, mouse and essential peripherals.
  4. Start Windows and check whether the error returns.
  5. Reconnect devices individually to identify whether a particular device is associated with the crash.

Do not disconnect internal storage or other essential components without appropriate technical knowledge.

6. Install Appropriate BIOS/UEFI and Chipset Updates

BIOS/UEFI firmware and chipset software help manage communication between the processor, memory and connected hardware.

In certain situations, an update may resolve hardware compatibility or DMA-related issues.

Before updating:

  • Check the exact computer or motherboard model.
  • Read the manufacturer's release notes.
  • Verify that the firmware update applies to your device.
  • Follow the manufacturer's installation instructions.
  • Ensure that the computer has reliable power during the update.

BIOS/UEFI updates carry risks if interrupted or performed incorrectly. Do not install firmware intended for another model or motherboard revision.

7. Analyse the Windows Crash Dump

Crash dump analysis is one of the most useful methods for investigating a recurring 0xE6 error.

Windows may save crash information in the following locations:

  • C:\Windows\Minidump – Small memory dump files.
  • C:\Windows\MEMORY.DMP – Kernel or complete memory dump, depending on the configured dump type.

You can use WinDbg, Microsoft's Windows debugging tool, to inspect these files.

Basic analysis procedure:

  1. Install WinDbg using Microsoft's official instructions.
  2. Open the relevant crash dump file.
  3. Allow the debugger to load the required symbols.
  4. Run the following command in the debugger:
!analyze -v

Review the bug check information, parameters, probable faulting module and available driver information.

For more detailed DMA analysis, experienced driver developers can use the kernel debugger's !dma extension.

Important: The module identified by a crash analysis is not automatically the defective component. Additional investigation may be necessary to establish the actual cause.

What If Windows Keeps Crashing During Startup?

If DRIVER_VERIFIER_DMA_VIOLATION appears repeatedly and prevents Windows from starting normally, use Windows Recovery Environment (WinRE).

Start Windows in Safe Mode

  1. Interrupt normal startup as directed by your computer manufacturer's recovery instructions, or use Windows installation or recovery media.
  2. Open Windows Recovery Environment.
  3. Select Troubleshoot.
  4. Select Advanced options.
  5. Select Startup Settings.
  6. Select Restart.
  7. Choose Safe Mode or Safe Mode with Networking as appropriate.

Once Windows starts in Safe Mode, you can investigate recently installed drivers and reset unintended Driver Verifier settings using an elevated Command Prompt.

If Safe Mode is also unavailable, use available recovery options and seek technical assistance before attempting disruptive repairs.

Microsoft Documented DMA-Related 0xE6 Issue

Microsoft has documented a specific historical scenario involving Stop Error 0xE6 when repeatedly disabling and enabling a wireless device driver while DMA remapping (DMAr) is enabled.

The documented issue involved certain OEM Windows 10 installations, including versions 1903, 1909 and 2004.

In that scenario:

  • A wireless device driver repeatedly underwent disable and enable operations.
  • The DMA adapter did not correctly release allocated memory.
  • Repeated operations caused memory consumption to increase.
  • The device could eventually stop responding.
  • Using Driver Verifier to investigate the issue could result in Stop Error 0xE6.

Microsoft documented a test-environment workaround involving disabling the DMA Protection setting in BIOS/UEFI.

Security warning: Disabling DMA Protection reduces hardware DMA security protections. This historical workaround should not be treated as a general solution for modern Windows systems. Do not disable Kernel DMA Protection or DMA remapping simply because a computer displays error 0xE6.

Refer to Microsoft's documentation for the exact applicability and limitations of this issue.

How to Prevent DRIVER_VERIFIER_DMA_VIOLATION

The following practices can help reduce the possibility of driver-related DMA problems:

  • Keep Windows updated with supported security and reliability updates.
  • Install compatible drivers from official hardware manufacturer websites.
  • Update chipset and firmware components when recommended by the manufacturer.
  • Avoid installing drivers from unverified third-party websites.
  • Disconnect hardware safely according to manufacturer instructions.
  • Use Driver Verifier primarily for controlled driver testing and debugging.
  • Avoid enabling Driver Verifier for all drivers on a business-critical production computer without a specific diagnostic requirement.
  • Maintain regular backups of important data.
  • Investigate recurring BSOD errors using crash dump analysis rather than repeatedly applying unrelated fixes.

When Should You Contact Technical Support?

Consider contacting the computer or hardware manufacturer's technical support team if:

  • The error continues after installing appropriate driver updates.
  • The crash consistently occurs when using a particular hardware device.
  • The bug check parameters indicate an IOMMU-detected violation.
  • The computer repeatedly crashes during startup.
  • Multiple devices show unusual behavior or memory-access problems.
  • You cannot identify the faulty driver through available crash-dump information.

When requesting technical support, provide the following information where available:

  • Windows edition, version and build number.
  • Computer or motherboard model.
  • Recently installed or updated hardware drivers.
  • The complete bug check parameters.
  • Relevant crash dump files.
  • The circumstances under which the error occurs.

Frequently Asked Questions (FAQs)

1. What does DRIVER_VERIFIER_DMA_VIOLATION mean?

It is a Windows stop error with bug check code 0x000000E6, associated with DMA Verification violations or IOMMU-detected DMA faults. It indicates that an invalid DMA-related operation or memory-access condition has been detected.

2. Is DRIVER_VERIFIER_DMA_VIOLATION a hardware or software problem?

It can involve either software or hardware-related conditions. A defective device driver, incorrect DMA resource management, DMA remapping compatibility problems or an IOMMU-detected hardware access violation may be involved. Crash dump analysis is necessary to narrow down the cause.

3. Can a faulty driver cause error 0x000000E6?

Yes. An incompatible or incorrectly implemented device driver can cause DMA Verification violations. Updating or rolling back the relevant driver may resolve the issue if the driver is responsible.

4. How do I disable Driver Verifier?

Open Command Prompt as Administrator and execute verifier /reset. Restart Windows to apply the reset. This clears the current Driver Verifier settings but does not repair an underlying hardware or driver defect.

5. What does Parameter 1 = 0x26 indicate?

Parameter 1 value 0x26 indicates that the IOMMU detected a DMA violation. The other parameters provide information about the faulting device object, faulting information and hardware-specific fault type.

6. Can updating BIOS fix DRIVER_VERIFIER_DMA_VIOLATION?

It may help if the problem is related to a documented firmware or hardware compatibility issue. However, a BIOS update is not a guaranteed fix and should only be performed when the manufacturer provides an applicable update or recommendation.

7. Is it safe to disable DMA Protection to fix this error?

Generally, disabling DMA Protection is not recommended as a routine troubleshooting step. It reduces protection against potentially unauthorized DMA access. Investigate the specific driver or device problem first and follow manufacturer guidance.

8. Can Windows 11 also experience error 0x000000E6?

Yes. The 0xE6 bug check is part of Windows driver and DMA error reporting. The exact cause and applicable troubleshooting procedure depend on the device, driver, Windows configuration and bug check parameters.

Key Takeaways

DRIVER_VERIFIER_DMA_VIOLATION (0x000000E6) is a serious Windows stop error associated with invalid DMA operations, DMA Verification failures or IOMMU-detected violations.

The most effective troubleshooting approach is to identify the specific violation before changing system settings. Check the bug check parameters, examine recently changed drivers, verify hardware compatibility and analyse crash dump files when necessary.

Resetting Driver Verifier can help when its settings were enabled unintentionally, but it should not be mistaken for a universal repair. Similarly, disabling DMA Protection is not a recommended general-purpose solution.

Accurate diagnosis and appropriate driver or firmware corrections are preferable to making unnecessary changes to Windows security and hardware protection settings.

Official References

YOUR FEEDBACK

Was this guide useful?

Your answer helps us keep BISONKB accurate and practical.

Links are permitted only to published BISONKB articles.
THE BISON BRIEF

Practical IT knowledge, once a week.

New troubleshooting guides, scripts and infrastructure notes. No noise.

By subscribing, you agree to our privacy policy. Unsubscribe at any time.