dmar

Firmware Test Suite - dmar test

The dmar test is an experimental test (and hence is not yet guaranteed to give reliable results across all platforms because of lack of exhaustive testing). The test attempts to sanity check the ACPI DMA Remapping (DMAR) table, see Intel(r)_VT_for_Direct_IO.pdf for mmore information about the DMAR table.

The test will:

  • Try to load the DMAR table
  • Check the DMAR table size
  • Check each DMAR entry.
  • Sanity check Reserved Memory Region Reporting (RMRR) Range addresses
  • Sanity check DMA Remapping Hardware Unit Definition (DRHD) register addresses, DRHR include_all flags and device scoping.

Examples:

sudo fwts dmar - 

..runs the test on your machine and dumps the output to stdout.

sudo fwts dmar

..runs the test on your machine and appends the output to the default log file results.log

Explanation of test results

Certain test results may require a little more explanation. This section will try and give some context to specific test failures.

Error ID

Explanation

InvalidDevScope

Device scope entry is too short. See section 8.3.1. of the VT for Direct IO reference guide.

DevScopeTypeNoMatch

Device scope type not match expected type.

InvalidDRHDReg`Addr

Invalid DRHD register address. It nees to be 4K aligned.

MultipleDRHDSFlag

Multiple DRHDs have the INCLUDE_PCI_ALL flag set, apparently this is not allowed.

InvalidRMRRRangeAddr

Invalid RMRR register address. It nees to be 4K aligned.

InvalidDMAR

Invalid DMAR table - shorter than the expected header size.

DMARError

Kernel has found a DMAR error and reported so in the kernel log.

FirmwareTestSuite/Reference/dmar (last edited 2016-01-11 07:25:14 by anthonywong)