Hi On Wed, Sep 9, 2015 at 1:20 PM, Gerd Hoffmann <kra...@redhat.com> wrote: > Hi, > > This patch series adds infrastructure for opengl rendering > (context management, define scanout textures), adds support > for this to sdl2 and gtk user interfaces and adds virgl/3d > mode to virtio-gpu by hooking up the virglrenderer library. >
Before I dig further, let me give some feedback on testing. I used f22 host, and a f22 guest with xserver/modesetting from git master. - the sdl2 gl backend doesn't display virgl rendering, I have this "extra" errors (not the one I usually get from virgl) Mesa: User error: GL_INVALID_OPERATION in glFramebufferTexture2D(window-system framebuffer) Mesa: User error: GL_INVALID_OPERATION in glGetnTexImageARB(missing image) Mesa: User error: GL_INVALID_OPERATION in glTexSubImage2D(invalid texture image) - gtk egl works ok - gtkglarea fails to initialize - regardless of the backend I get these errors in the guest: Sep 11 11:58:34 localhost.localdomain /usr/libexec/gdm-x-session[1669]: (WW) modeset(0): flip queue failed: Invalid argument Sep 11 11:58:34 localhost.localdomain /usr/libexec/gdm-x-session[1669]: (WW) modeset(0): Page flip failed: Invalid argument Sep 11 11:58:34 localhost.localdomain /usr/libexec/gdm-x-session[1669]: (EE) modeset(0): present flip failed - apart from the aspect-ratio issue (cursor doesn't follow it either), there is a off-by-one cursor update bug (that I know existed before, and I plan to look at) Finally, wayland (gnome-shell --wayland gdm session): - has some refresh issues that X doesn't have - give black screen why virtio-vga,virgl=false > please review, > Gerd > > Gerd Hoffmann (9): > shaders: initialize vertexes once > sdl2: quick & dirty flicker workaround > ui/console: add opengl context and scanout support interfaces. > virtio-gpu: update headers for virgl/3d > virtio-gpu: add 3d mode and virgl rendering support. > sdl2/opengl: add opengl context and scanout support > opengl: add egl-context.[ch] helpers > gtk/opengl: add opengl context and scanout support (egl) > gtk/opengl: add opengl context and scanout support (GtkGLArea) > > configure | 40 ++ > hw/display/Makefile.objs | 6 +- > hw/display/virtio-gpu-3d.c | 598 > ++++++++++++++++++++++++++++ > hw/display/virtio-gpu.c | 130 +++++- > include/hw/virtio/virtio-gpu.h | 22 +- > include/standard-headers/linux/virtio_gpu.h | 112 +++++- > include/ui/console.h | 36 ++ > include/ui/egl-context.h | 14 + > include/ui/gtk.h | 39 ++ > include/ui/sdl2.h | 22 +- > include/ui/shader.h | 4 +- > trace-events | 8 + > ui/Makefile.objs | 6 + > ui/console-gl.c | 7 +- > ui/console.c | 67 +++- > ui/egl-context.c | 34 ++ > ui/gtk-egl.c | 129 +++++- > ui/gtk-gl-area.c | 219 ++++++++++ > ui/gtk.c | 118 ++++-- > ui/sdl2-2d.c | 13 + > ui/sdl2-gl.c | 133 +++++++ > ui/sdl2.c | 7 + > ui/shader.c | 32 +- > 23 files changed, 1741 insertions(+), 55 deletions(-) > create mode 100644 hw/display/virtio-gpu-3d.c > create mode 100644 include/ui/egl-context.h > create mode 100644 ui/egl-context.c > create mode 100644 ui/gtk-gl-area.c > > -- > 1.8.3.1 > > -- Marc-André Lureau