Bug 1283708

Summary: USB Device passthrough should not be disabled when host doesn't support PCI passthrough
Product: [oVirt] ovirt-engine Reporter: Martin Betak <mbetak>
Component: BLL.VirtAssignee: Martin Betak <mbetak>
Status: CLOSED CURRENTRELEASE QA Contact: Nisim Simsolo <nsimsolo>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 3.6.0CC: bugs, michal.skrivanek, nsimsolo
Target Milestone: ovirt-3.6.2Flags: michal.skrivanek: ovirt-3.6.z?
rule-engine: planning_ack?
michal.skrivanek: devel_ack+
rule-engine: testing_ack+
Target Release: 3.6.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-18 11:19:31 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Martin Betak 2015-11-19 16:09:29 UTC
Description of problem:
The current check of host's device passthrough capability should only be applicable to PCI devices and not other types of passthrough (e.g: USB).

Version-Release number of selected component (if applicable): 3.6.0

How reproducible: 100%

Steps to Reproduce:
1. Have host which is not configured for PCI passthrough
2. Attach a USB device from this host to a VM
3. Try to run the VM

Actual results:
Vm fails to run because it fails to satisfy the HostDeviceFilterPolicyUnit.

Expected results:
Vm should run successfully.

Comment 1 Sandro Bonazzola 2015-12-23 13:43:17 UTC
oVirt 3.6.2 RC1 has been released for testing, moving to ON_QA

Comment 2 Nisim Simsolo 2016-02-08 15:06:10 UTC
Verified using build: 
rhevm-3.6.3-0.1.el6
qemu-kvm-rhev-2.3.0-31.el7.4.x86_64
vdsm-4.17.19-0.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.2.x86_64

Verification scenario:
1. Verify PCI passthrough is disabled at BIOS level (no Intel vt-d or AMD vi enabled).
2. Verify host IOMMU is disabled (cat /proc/cmdline).
3. Verify host device passthrough is disabled at: webadmin ==> hosts tab ==> general tab.
4. Attach USB device to VM (can be keyboard/mouse/flash drive etc.).
5. Run VM.
6. Verify USB device is attached to VM.
7. Try to run another VM with same device attached and verify VM cannot be run and rejected by webadmin with an appropriate message.
8. Power of VM and verify no errors/exception occurs (vdsm and engine logs).

Test case attached to external trackers.