Module: Mesa Branch: master Commit: 1207482a0340bfe92e2ff764e55d619c8036a47d URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=1207482a0340bfe92e2ff764e55d619c8036a47d
Author: Chia-I Wu <[email protected]> Date: Sun Feb 21 15:47:45 2010 +0800 st/egl: Disable SHM in ximage backend. With pipe_screen::update_buffer being called in st_validate_state, it is likely that softpipe will flush tile caches to a detached SHM segment. Disable SHM for now until a better solution is found. --- src/gallium/state_trackers/egl/x11/native_x11.c | 13 ++++++++++--- 1 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/gallium/state_trackers/egl/x11/native_x11.c b/src/gallium/state_trackers/egl/x11/native_x11.c index 8eb542b..55f0d4d 100644 --- a/src/gallium/state_trackers/egl/x11/native_x11.c +++ b/src/gallium/state_trackers/egl/x11/native_x11.c @@ -141,9 +141,16 @@ native_create_display(EGLNativeDisplayType dpy) if (!ndpy) { EGLint level = (force_sw) ? _EGL_INFO : _EGL_WARNING; - - _eglLog(level, "use software fallback"); - ndpy = x11_create_ximage_display(dpy, TRUE); + boolean use_shm; + + /* + * XXX st/mesa calls pipe_screen::update_buffer in st_validate_state. + * When SHM is used, there is a good chance that the shared memory + * segment is detached before the softpipe tile cache is flushed. + */ + use_shm = FALSE; + _eglLog(level, "use software%s fallback", (use_shm) ? " (SHM)" : ""); + ndpy = x11_create_ximage_display(dpy, use_shm); } return ndpy; _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
