15.2. Adding a PCI device with virt-manager
PCI devices can be added to guests using the graphical
virt-manager
tool. The following procedure adds a 2 port USB controller to a guest.
Identify the device
Identify the PCI device designated for passthrough to the guest. Thevirsh nodedev-list
command lists all devices attached to the system. The--tree
option is useful for identifying devices attached to the PCI device (for example, disk controllers and USB controllers).# virsh nodedev-list --tree
For a list of only PCI devices, run the following command:# virsh nodedev-list | grep pci
Each PCI device is identified by a string in the following format (where 8086 is a variable that in this case represents Intel equipment, and **** is a four digit hexadecimal code specific to each device):pci_8086_****
Note
Comparinglspci
output tolspci -n
(which turns off name resolution) output can assist in deriving which device has which device identifier code.Record the PCI device number; the number is needed in other steps.Detach the PCI device
Detach the device from the system.# virsh nodedev-dettach pci_8086_3a6c Device pci_8086_3a6c dettached
Power off the guest
Power off the guest. Hotplugging PCI devices into guests is presently unsupported and may fail or crash.Open the hardware settings
Open the virtual machine and select the Hardware tab. Click the Add Hardware button to add a new device to the guest.Add the new device
Select Physical Host Device from the Hardware type list. The Physical Host Device represents PCI devices. Click Forward to continue.Select a PCI device
Select an unused PCI device. Note that selecting PCI devices presently in use on the host causes errors. In this example a PCI to USB interface device is used.Confirm the new device
Click the Finish button to confirm the device setup and add the device to the guest.
The setup is complete and the guest can now use the PCI device.