[libvirt] Playing around with libvirt/virt-manager.
Daniel J Walsh
dwalsh at redhat.com
Tue Feb 24 14:29:26 UTC 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Daniel P. Berrange wrote:
> On Mon, Feb 23, 2009 at 05:46:36PM -0500, Daniel J Walsh wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>>
>> Daniel P. Berrange wrote:
>>> On Tue, Feb 17, 2009 at 04:52:08PM -0500, Daniel J Walsh wrote:
>>>> -----BEGIN PGP SIGNED MESSAGE-----
>>>> Hash: SHA1
>>>>
>>>> Looks like qemu launched from libvirt wants to create pulseaudito files
>>>> under /root/.pulse directory.
>>> Hmm, that sounds bad - it should not do this.
>>>
>>>> Seems strange, and we might want to consider changing the homedir for
>>>> each qemu launched by libvirt.
>>>>
>>>> /var/run/libvirt/qemu/DOMAIN
>>>>
>>>> for example.
>>>>
>>>> It seems qemu has to be able to write here or it blows up.
>>> What version of QEMU is this with - I think that needs to be fixed in
>>> QEMU
>>>
>>>> Will add selinux policy for now.
>>> I'd prefer not - AFAIK, QEMU should not be doing this - if PulseAudio
>>> is desired when running as root, then the admin should start it ahead
>>> of time, not have QEMU auto-spawn it. PA should only auto-spawn itself
>>> if running non-root in the desktop session IMHO.
>>>
>>> Daniel
>>
>> For some reason it is also trying to create /root/.kde directory and
>> then link a socket to /tmp/ksocket-root.
>>
>> Everything seems to be caused by sound.
>>
>> I hacked out a libvirt that does not add the -esound qualifier to qemu
>> and every thing works correctly in svirt with SELinux in enforcing mode.
>>
>> Not really sure what the proper way to handle this? Should libvirt be
>> execing qemu with the sound device if it is running as root? Will this
>> work with the sound devices? What happens if libvirt is remote?
>
> Configuring sound devices in QEMU when doing remote provisioning is
> pretty useless really. We need to tunnelling of audio stream from
> the QEMU instance to the client machine, over VNC / SPICE, or a
> parallel network audio transport.
>
> I'm inclined to say we should set the SDL env variable to disable sound
> for instances run as root, and only use sound when launching the per-user
> unprivileged instances which are able to properly integrate with the
> sound daemon provided by the desktop session (ESD / PulseAudio / KDE)
>
> Daniel
How about a patch like this for now, took some liberties with your quote?
git diff origin qemu_conf.c
diff --git a/src/qemu_conf.c b/src/qemu_conf.c
index 6f58ee8..32cdba2 100644
- --- a/src/qemu_conf.c
+++ b/src/qemu_conf.c
@@ -1327,8 +1327,13 @@ int qemudBuildCommandLine(virConnectPtr conn,
ADD_ARG_LIT("-full-screen");
}
- - /* Add sound hardware */
- - if (vm->def->nsounds) {
+ /* Add sound hardware iff you are not running as root */
+ /* Configuring sound devices in QEMU when doing remote provisioning is
+ pretty useless really. We need to tunnelling of audio stream from
+ the QEMU instance to the client machine, over VNC / SPICE, or a
+ parallel network audio transport. */
+
+ if (getuid() && vm->def->nsounds) {
int size = 100;
char *modstr;
if (VIR_ALLOC_N(modstr, size+1) < 0)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
iEYEARECAAYFAkmkBEYACgkQrlYvE4MpobPD4QCeP/VNSkebMd7b86t+n8fx+T+s
+w8AoJGkLnrd1hLUxFU/6o9zRSv2WQUE
=4CAZ
-----END PGP SIGNATURE-----
More information about the libvir-list
mailing list