Hide Forgot
Description of problem: When virt-viewer attempts to run virDomainOpenGraphics, strace shows sendmsg() sending the FD, but QEMU never gets it with recvmsg(). THis leads to this error 2013-08-22 10:02:48.263+0000: 11573: debug : virDomainOpenGraphics:21172 : dom=0x1283e10, (VM: name=demo, uuid=62e2a27e-2f92-5545-2c8e-38b2cec76487), idx=0, fd=15, flags=1 (virt-viewer:11573): virt-viewer-DEBUG: Error internal error: unable to execute QEMU command 'getfd': No file descriptor supplied via SCM_RIGHTS The problem is that the FD libvirt gets is from an unconfined app. It passes this onto QEMU, which will be forbidden to access it. Libvirt needs to relabel it to the svirt image label to allow QEMU access. Version-Release number of selected component (if applicable): libvirt-0.10.2-22 How reproducible: Always Steps to Reproduce: 1. virt-viewer -c qemu:///session --debug --attach guestname 2. 3. Actual results: See the error message (virt-viewer:11573): virt-viewer-DEBUG: Error internal error: unable to execute QEMU command 'getfd': No file descriptor supplied via SCM_RIGHTS Expected results: virDomainOpenGraphics completes without error Additional info:
commit b6b94374b3bf6b44633ee99a68868141b6cd9ed8 Author: Daniel P. Berrange <berrange> Date: Thu Aug 22 12:38:26 2013 +0100 Set security label on FD for virDomainOpenGraphics
As Daniel pointed out in the patch review: Turns out the RHEL-6 QEMU lacks the monitor command to support this API, so adding the patch to libvirt is pointless. We can close this bug then.