Commit 633c529416 for qemu.org
commit 633c52941686444917cf1e530df32b07b03ec0a7
Author: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
Date: Tue Mar 3 22:08:55 2026 +0900
ui/console: Remove DisplaySurface::mem_obj
Only spice uses it so move it to spice.
Signed-off-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-Id: <20260303-gl-v1-2-d90f0a237a52@rsg.ci.i.u-tokyo.ac.jp>
diff --git a/include/ui/spice-display.h b/include/ui/spice-display.h
index 690ece7380..a382553fa8 100644
--- a/include/ui/spice-display.h
+++ b/include/ui/spice-display.h
@@ -121,6 +121,7 @@ struct SimpleSpiceDisplay {
QEMUBH *gl_unblock_bh;
QEMUTimer *gl_unblock_timer;
QemuGLShader *gls;
+ GLuint gl_surface_mem_obj;
int gl_updates;
bool have_scanout;
bool have_surface;
diff --git a/include/ui/surface.h b/include/ui/surface.h
index 006b1986bb..f16f7be8be 100644
--- a/include/ui/surface.h
+++ b/include/ui/surface.h
@@ -22,7 +22,6 @@ typedef struct DisplaySurface {
GLenum glformat;
GLenum gltype;
GLuint texture;
- GLuint mem_obj;
#endif
qemu_pixman_shareable share_handle;
uint32_t share_handle_offset;
diff --git a/ui/console-gl.c b/ui/console-gl.c
index 22e9787c41..73be35c1fc 100644
--- a/ui/console-gl.c
+++ b/ui/console-gl.c
@@ -185,12 +185,6 @@ void surface_gl_destroy_texture(QemuGLShader *gls,
}
glDeleteTextures(1, &surface->texture);
surface->texture = 0;
-#ifdef GL_EXT_memory_object_fd
- if (surface->mem_obj) {
- glDeleteMemoryObjectsEXT(1, &surface->mem_obj);
- surface->mem_obj = 0;
- }
-#endif
}
void surface_gl_setup_viewport(QemuGLShader *gls,
diff --git a/ui/spice-display.c b/ui/spice-display.c
index 5052f371f4..87cc193cde 100644
--- a/ui/spice-display.c
+++ b/ui/spice-display.c
@@ -950,7 +950,14 @@ static bool spice_gl_replace_fd_texture(SimpleSpiceDisplay *ssd,
} else {
surface_gl_destroy_texture(ssd->gls, ssd->ds);
ssd->ds->texture = texture;
- ssd->ds->mem_obj = mem_obj;
+
+#ifdef GL_EXT_memory_object_fd
+ if (ssd->gl_surface_mem_obj) {
+ glDeleteMemoryObjectsEXT(1, &ssd->gl_surface_mem_obj);
+ }
+
+ ssd->gl_surface_mem_obj = mem_obj;
+#endif
}
return ret;
}