Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 566994

Summary: app-emulation/qemu-9999 - Add support for virtio gpu
Product: Gentoo Linux Reporter: Michal Privoznik <miso.privoznik>
Component: Current packagesAssignee: Gentoo QEMU Project <qemu+disabled>
Status: RESOLVED FIXED    
Severity: normal    
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 566992    
Bug Blocks:    

Description Michal Privoznik 2015-11-27 15:46:55 UTC
Virtio GPU is new feature added to qemu in 2.5.0 release:

http://wiki.qemu.org/ChangeLog/2.5#virtio

However, in order to enable the feature, a helper library is required. It's called virglrenderer. The idea is, that opengl commands from guest are passed directly into host's opengl stack and rendered on real HW gaining much more performance. See this presentation for more info:

https://www.kraxel.org/slides/qemu-opengl/#title

I think it would be nice if this feature would be enabled in qemu. Of course via a useflag.

For then new virglrenderer package I've filled bug 566992.

Here's the diff that can be used as starting position:

--- /tmp/qemu-9999.ebuild       2015-11-27 15:02:01.135828888 +0100
+++ /usr/portage/app-emulation/qemu/qemu-9999.ebuild    2015-11-27 15:02:49.375676205 +0100
@@ -34,7 +34,7 @@
 +png pulseaudio python \
 rbd sasl +seccomp sdl sdl2 selinux smartcard snappy spice ssh static static-softmmu
 static-user systemtap tci test +threads usb usbredir +uuid vde +vhost-net \
-virtfs +vnc vte xattr xen xfs"
+virgl virtfs +vnc vte xattr xen xfs"
 
 COMMON_TARGETS="aarch64 alpha arm cris i386 m68k microblaze microblazeel mips
 mips64 mips64el mipsel or32 ppc ppc64 s390x sh4 sh4eb sparc sparc64 unicore32
@@ -134,6 +134,7 @@
        usbredir? ( >=sys-apps/usbredir-0.6[static-libs(+)] )
        uuid? ( >=sys-apps/util-linux-2.16.0[static-libs(+)] )
        vde? ( net-misc/vde[static-libs(+)] )
+       virgl? ( media-libs/virglrenderer )
        virtfs? ( sys-libs/libcap )
        xfs? ( sys-fs/xfsprogs[static-libs(+)] )"
 USER_LIB_DEPEND="${COMMON_LIB_DEPEND}"
@@ -395,6 +396,7 @@
                $(conf_softmmu uuid)
                $(conf_softmmu vde)
                $(conf_softmmu vhost-net)
+               $(conf_softmmu virgl virglrenderer)
                $(conf_softmmu virtfs)
                $(conf_softmmu vnc)
                $(conf_softmmu vte)