Red Hat Bugzilla – Bug 1111044
capabilities mode hostdev shouldn't be added in KVM
Last modified: 2015-03-05 02:37:50 EST
Description of problem: capabilities mode hostdev shouldn't be defined in KVM. From libvirt.org: " Block / character devices from the host can be passed through to the guest using the hostdev element. This is only possible with container based virtualization. since after 1.0.1 for LXC " We can see this capabilities mode is only for container based virtualization, like LXC. So for KVM, this hostdev shouldn't be defined. Version-Release number of selected component (if applicable): libvirt-1.1.1-29.el7.x86_64 How reproducible: 100% Steps to Reproduce: 1. add capabilities mode hostdev to a inactive domain: # virsh edit r6 ... <hostdev mode='capabilities' type='storage'> <source> <block>/dev/sdb3</block> </source> </hostdev> ... 2. start domain # virsh start r6 3. this hostdev is not working actually, no effect for KVM domain. The storage can't be listed in guest: # lspci Expected result: libvirtd should forbid to add capabilities mode hostdev to KVM domain.
Fixed in upstream: commit 01e508f33c3b94bafe3e266bfd45b070fae8c8c0 Author: Jincheng Miao <jmiao@redhat.com> Date: Wed Jun 25 14:45:59 2014 +0800 enhance hostdev mode 'capabilities' process Currently, only LXC has hostdev mode 'capabilities' support, so the other drivers should forbid to define it in XML. The hostdev mode check is added to devicesPostParseCallback() for each hypervisor driver. But there are some drivers lack function devicesPostParseCallback(), so only add check for qemu, libxl, openvz, uml, xen, xenapi. Signed-off-by: Jincheng Miao <jmiao@redhat.com>
Verify it as follows. The result is expected. Version: libvirt-1.2.8-7.el7.x86_64 qemu-kvm-1.5.3-79.el7.x86_64 qemu-kvm-rhev-2.1.2-8.el7 Steps: Add the following content to a inactive domain. <hostdev mode='capabilities' type='storage'> <source> <block>/dev/sdb3</block> </source> </hostdev> # virsh edit a error: unsupported configuration: hostdev mode 'capabilities' is not supported in kvm Failed. Try again? [y,n,f,?]:
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHSA-2015-0323.html