0x00000158: ILLEGAL_IOMMU_PAGE_FAULT fix error

BSOD 0x00000158 means that the IOMMU delivered a paging error packet for an invalid ASID. This is insecure since the ASID may have already been used many times.


  1. Invalid ASID.
  2. The number of currently used ASIDs.
  3. Process using ASID.
  4. Reference counter ASID.

4 Recommendations for the Elimination of BSoD:

1. 0x00000158: ILLEGAL_IOMMU_PAGE_FAULT may appear due to errors in the code of the operating system itself. Microsoft is constantly working to correct such errors, releasing patches and service packs. Installed the latest update package (Service pack) and the constant updating of the system will save a lot of errors.
2. If 0x00000158: ILLEGAL_IOMMU_PAGE_FAULT appeared after the newly installed device driver or program. It is necessary to roll back the driver to an earlier version. With programs, things are easier, removing them will eliminate the cause of the failure. The “Run Last Known Good Configuration” option may be useful.
3. If 0x00000158: ILLEGAL_IOMMU_PAGE_FAULT began to appear after you have connected a new device to the system, then you need to check it for compatibility with your operating system. If the device is compatible, then you need to download the latest drivers from the official website of the manufacturer and install them. If the latest drivers are installed, you need to install an earlier version of the drivers. If the device is incompatible with the operating system, then it is necessary either to change this device or to change the operating system that supports this device.
4. Very often the cause of the appearance of 0x00000158: ILLEGAL_IOMMU_PAGE_FAULT is a malfunction of the RAM. To test it, you can use testing programs, such as memtest86+.