Description of problem:
On an Intel machine with VTd support, the host devices suffer a performance degradation running with the IOMMU enabled unless "iommu=pt" is set *and* the system has an advanced Vtd support chip set that has hw-assisted pass-through
Upstream has improved the pass-through support with VTd enabled, which makes it work on all variations of Vtd support.
Updating the RHEL5.4 Vtd support to the more current, upstream version will
provide the updated pass-through support.
Additionally, there are a handful of bug fixes in the upstream version that
should be backported as well.
Version-Release number of selected component (if applicable):
intel_iommu=on, iommu=pt on a Weybridge machine yields no performance improvement.
Steps to Reproduce:
1. with iommu=pt, get similar performance results on host as if iommu was off.
2. Some BIOS's have improper DMAR tables which the VTd IOMMU support is dependent on; upstream patches (outside of pass-through) cleanly report & exit these 'features'. RHEL5.4 often crashes on boot with no information about the cause.
Host performance degradation varies with IO traffic and use of the dma-mapping interface by the device driver. The performance variations range from 20%->80%
on the host.
With the proper software, the performance difference between a host running without IOMMU and a host running with IOMMU is reduced to under 5%.
With additional patches, the IOMMU support fails more gracefully so customers know to seek BIOS updates from vendors versus reporting errors to Red Hat that it cannot resolve.
This update is necessary to have equal performance standing with xen host & guests that use IOMMU when the system has it available.
The idea is to update the code base to 2.6.31, or some stable point in 2.6.32 devel; current code base is 2.6.30-based.
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update
Posted 9 patch change set to rkml.
Essentially backported intel-iommu changes
from 2.6.32 along with 5 extras in iommu-2.6.32.git
that are staged for 2.6.32-stable (and in F13/rawhide).
You can download this test kernel from http://people.redhat.com/dzickus/el5
Please update the appropriate value in the Verified field
(cf_verified) to indicate this fix has been successfully
verified. Include a comment with verification details.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.
filled in doc fields