spacer spacer spacer
 
 
  arrow Description
  arrow Sample Screen
  arrow Key Facts
  arrow Solutions
  arrow Forum Help
  arrow Technical Details
  arrow Vendor Summary
  arrow Research this Issue
  help Solutions Help
 
  Partition Commander
Now it's easy for anyone to safely partition their hard drive! You can reclaim waste disk space, organize files, even add new OSes.
box_image  
 
 
box_image
Fix-It Utilities
Make your PC run like new! Includes Anti-Virus, Anti-Spyware, hardware diagnostics, registry fixer, and more!
 
  PC Mover
Move applications, files and settings from one PC to another. Handles Windows upgrades too, even XP 32-bit to Windows 7 64-bit!
box_image  
     
 
 
Fatal Error Solutions
     
 

The DMA Subsystem has detected an illegal...

STOP: 0x000000E6

 
  Description  
     
 

A device driver has a bug. This issue will only appear if the Driver Verifier is on (a tool nomrally used by programmers and IT staff during debugging).

Some versions of Windows may show the description as "DRIVER_VERIFIER_DMA_VIOLATION".

This is a fatal Windows error, typically called a Stop message, Bug Check, or more commonly the Blue Screen of Death (BSoD). The system is in a forced reboot state. Any unsaved work is likely lost.

 
   
  Sample Screen  
     
 

A problem has been detected and Windows has been shut down to prevent damage to your computer.

The DMA Subsystem has detected an illegal DMA operation initiated by
a driver being verified. The faulty driver must be replaced with a
working version.

If this is the first time you've seen this Stop error screen, restart your computer. If this screen appears again, follow these steps:

Check to make sure any new hardware or software is properly installed. If this is a new installation, ask your hardware or software manufacturer for any Windows updates you might need.

If problems continue, disable or remove any newly installed hardware or software. Disable BIOS memory options such as caching or shadowing. If you need to use Safe Mode to remove or disable components, restart your computer, press F8 to select Advanced Startup Options, and then select Safe Mode.

Technical Information:

*** STOP: 0x000000E6

Beginning dump of physical memory
Physical memory dump complete.

Contact your system administrator or technical support group for further
assistance.

 
 
Text may appear differently depending on where the error occurs.
Additional technical information (hex values) specific to a machine are not shown.
 
   
  Key Facts  
     
 
Full Title
  The DMA Subsystem has detected an illegal DMA operation initiated by
a driver being verified. The faulty driver must be replaced with a
working version. 


Stop Code
  0x000000E6 

Type
  Fatal 

occurance meter
Windows
  XP, Vista, 2008, 7, 8

Vendor
  Microsoft Corporation
 
   
  Solutions and Fixes  
     
 
  Date votes Ratings
Get the Latest Updates
7
    Add    Flag
solution icon

Install the latest Windows software updates. Don't forget to check for non-critical updates too!

To manually get updates, open Internet Explorer (you can't use a non-Microsoft browser for updates).

For IE 8 and later: Click on Safety, then Windows Update. Follow the instructions.


 

For IE 7 and older: Click on Tools, then Windows Update. Follow the instructions.


 
   
 
transparent
transparent
solves it indicator
risk indicator
effort indicator
 
  FaultWire Staff
Posted: 5-Oct-2008
 
Avatar
 
Get the Latest Drivers
7
    Add    Flag
solution icon

Check if you are using the latest hardware drivers, especially the chipset and video drivers. Older drivers are a common contributor to BSoD issues.

You can use a product like Driver Genius or Radar Sync to verify you have the latest drivers and help keep all your drivers up-to-date. If you're comfortable with driver installations, you can individually find and install current drivers.

A some of the most popular driver download sites:

 
   
 
transparent
transparent
solves it indicator
risk indicator
effort indicator
 
  FaultWire Staff
Posted: 5-Oct-2008
 
Avatar
 
Uninstall the Last Install
6
    Add    Flag
solution icon

If you can get the system up for more than a few minutes or can use safe mode, try removing the last installed software application or driver.

For removal of an application (Windows 8+)

  1. Press the Windows Key and X together, then  Control Panel, then Programs and Features.
  2. Select the software to uninstall and select Uninstall.

 For removal of an application (Windows 7 & Vista):

  1. Click on Start, Control Panel, then Programs and Features.
  2. Select the software to uninstall and select Uninstall.

For removal of an application (Windows XP):

  1. Click on Start, Control Panel, then Add or Remove Programs.
  2. Select the software to uninstall and select Remove.

To disable a driver:

  1. Bring up the system information dialog:

    On the keyboard, press the Windows key + Pause/Break.

       or

    Select Start, right click Computer and on the drop-down, select Properties.

  2. Click on the left side option Advanced system settings (7/Vista only).
  3. In System Properties, select the Hardware tab, then click on Device Manager button.
  4. Find the hardware/driver of interest (you may need to expand a choice at the "plus" graphic) and double click the choice.
  5. Select the Driver tab. Here you can perform a number of actions such as update the driver, roll Back the driver to an older version, disable or uninstall the driver.
  6. Click OK to exit, then close the Device Manager and other previously opened dialogs.
 
   
 
transparent
transparent
solves it indicator
risk indicator
effort indicator
 
  FaultWire Staff
Posted: 5-Oct-2008
 
Avatar
 

Also see our list of common Fatal Error Solutions.

 
 
 
  Forum Help  
     
 
Forums on topic

Check out what others say about this issue and review or add your own comments and solutions!

Go to Forums on topic.
 
   
  Technical Details  
     
 
  technical details

This covers all Driver Verifier DMA Verification violations when the Driver Verifier is run.

After the Stop code will be a hex values: {Parameter 1}.

Parameter 1 specifies the cause of the issue.

0x00000000 This code can represent two kinds of errors:
1. The driver tried to flush too many bytes to the end of the map register file. The number of bytes permitted and the number of bytes attempted are displayed.
2. Windows has run out of contiguous map registers. The number of map registers needed and the largest block of contiguous map registers is displayed.
0x00000001 The performance counter has decreased. The old and new values of the counter are displayed.
0x00000002 The performance counter has increased too fast. The counter value is displayed in the debugger.
0x00000003 The driver freed too many DMA common buffers. Usually this means it freed the same buffer two times.
0x00000004 The driver freed too many DMA adapter channels. Usually this means it freed the same adapter channel two times.
0x00000005 The driver freed too many DMA map registers. Usually this means it freed the same map register two times. The number of active map registers is displayed.
0x00000006 The driver freed too many DMA scatter/gather lists. Usually this means it freed the same scatter/gather list two times. The number of lists allocated and the number of lists freed is displayed.
0x00000007 The driver tried to release the adapter without first freeing all its common buffers. The adapter address and the number of remaining buffers is displayed.
0x00000008 The driver tried to release the adapter without first freeing all adapter channels, common buffers, or scatter/gather lists. The adapter address and the number of remaining items is displayed.
0x00000009 The driver tried to release the adapter without first freeing all map registers. The adapter address and the number of remaining map registers is displayed.
0x0000000A The driver tried to release the adapter without first freeing all its scatter/gather lists. The adapter address and the number of remaining scatter/gather lists is displayed.
0x0000000B HV_TOO_MANY_ADAPTER_CHANNELSThe driver has allocated too many adapter channels at the same time. . (Only one adapter channel is permitted per adapter.)
0x0000000C The driver tried to allocate too many map registers at the same time. The number requested and the number allowed are displayed.
0x0000000D The driver did not flush its adapter buffers. The number of bytes that the driver tried to map and the maximum number of bytes allowed are displayed.
0x0000000E The driver tried a DMA transfer without locking the buffer. The buffer in question was in paged memory. The address of the MDL is displayed.
0x0000000F The driver or the hardware wrote outside its allocated DMA buffer. The nature of the error (overrun or underrun) is displayed, as well as the relevant addresses.
0x00000010 The driver tried to free its map registers while some were still mapped. The number of map registers still mapped is displayed.
0x00000011 The driver has too many outstanding reference counts for the adapter. The number of reference counts and the adapter address are displayed.
0x00000013 The driver called a DMA routine at an improper IRQL. The required IRQL and the actual IRQL are displayed.
0x00000014 The driver called a DMA routine at an improper IRQL. The required IRQL and the actual IRQL are displayed.
0x00000015 The driver tried to allocate too many map registers. The number requested and the number allowed are displayed.
0x00000016 The driver tried to flush a buffer that is not mapped. The address of the buffer is displayed.
0x00000018 The driver tried a DMA operation by using an adapter that was already released and no longer exists. The adapter address is displayed.
0x00000019 The driver passed a null DMA_ADAPTER value to a HAL routine.
0x0000001B The driver passed an address and MDL to a HAL routine. However, this address is not within the bounds of this MDL. The address passed and the address of the MDL are displayed.
0x0000001D The driver tried to map an address range that was already mapped. The address range and the current mapping for that range are displayed.
0x0000001E The driver called HalGetAdapter. This function is obsolete - you must use IoGetDmaAdapter instead.
0x0000001F HV_BAD_MDLThe driver referenced an invalid system address - either before the first MDL, or after the end of the first MDL, or by using a transfer length that is longer than the MDL buffer and crosses a page boundary within the MDL. . Either the invalid address and the first MDL address, or the MDL address and the extra transfer length are displayed.
0x00000020 The driver tried to flush a map register that hasn't been mapped. The map register base, flushing address, and MDL are displayed.
0x00000021 The driver tried to map a zero-length buffer for transfer.
 
   
  Vendor Summary  
     
 
Vendor
  Microsoft Corporation (more info...)

Microsoft Corporation Logo
Phone
1-425-882-8080
1-800-642-7676

Web
Main
USA

Assistance
Support
Downloads

 
     
    While BSoD fatal stop errors are identified by Microsoft Windows, they are often caused by non-Microsoft applications, drivers and hardware issues.  
   
  Research this Issue  
     
 
Getting search results...
 
     
  Notes  
     
  While we believe this information up to date and accurate, FAQware is not responsible for any inaccuracies. If you find something that is out of date or inaccurate, please let us know at so we can correct it.