Bug 1275401 - Incorrect description in 17.1.6. PCI passthrough
Incorrect description in 17.1.6. PCI passthrough
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: doc-Virtualization_Deployment_and_Administration_Guide (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Jiri Herrmann
: Documentation
Depends On:
  Show dependency treegraph
Reported: 2015-10-26 15:47 EDT by Alex Williamson
Modified: 2017-06-12 07:54 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Alex Williamson 2015-10-26 15:47:24 EDT
Document URL: 


Section Number and Name: 

17.1.6. PCI passthrough

Describe the issue: 

Regarding the following paragraph:

To use VFIO device assignment rather than traditional/legacy KVM device assignment (VFIO is a new method of device assignment that is compatible with UEFI Secure Boot), a <type='hostdev'> interface can have an optional driver sub-element with a name attribute set to "vfio". To use legacy KVM device assignment you can set name to "kvm" (or simply omit the <driver> element, since <driver='kvm'> is currently the default).

While the <driver> parameter is valid XML within the <hostdev> for an assigned device, RHEL7 only supports and only enables VFIO based device assignment.  Therefore if the <driver> element is omitted, the default will be to use VFIO, which is also the upstream default.  Using <driver='kvm'/> is not supported and will not work on RHEL7.

Suggestions for improvement: 

I'm not sure there's any value to the paragraph.  There is no release that supports or even enables both legacy KVM device assignment and VFIO.  The default is always the correct value to use, it will result in VFIO on RHEL7 and legacy on RHEL6.  We could further eliminate the <driver> element from the <hostdev> examples as it's just extraneous information for users.

Additional information:
Comment 2 Luiz Capitulino 2015-10-26 16:37:24 EDT
I had to consult the documentation myself last week and got a bit confused precisely by the paragraph mentioned by Alex. Here's a few suggestions on how to make the documentation clearer:

1. In the introduction in 17.1 be clear that only VFIO is supported and it's used by our tools by default

2. Drop any reference to legacy device assignment from the docs

3. Standardize the terminology on "device assignment" or "passthrough". That is, pick one and drop the other from all sections

4. Maybe 17.1.6 can be dropped altogether? I'm new to this, but I still don't exactly get what it's documenting. Is it an attempt to document SR-IOV? The next section seems to do that too
Comment 3 Alex Williamson 2015-10-26 16:49:22 EDT
(In reply to Luiz Capitulino from comment #2)
> 3. Standardize the terminology on "device assignment" or "passthrough". That
> is, pick one and drop the other from all sections

IMO, PCI device assignment should always use the term "device assignment".  "Passthrough" should be reserved for things like the way we attach USB devices or smartcards to a VM.

Note You need to log in before you can comment on or make changes to this bug.