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.
This commit is contained in:
Chia-I Wu 2010-02-21 15:47:45 +08:00
parent f96e8a033b
commit 1207482a03
1 changed files with 9 additions and 2 deletions

View File

@ -141,9 +141,16 @@ native_create_display(EGLNativeDisplayType dpy)
if (!ndpy) {
EGLint level = (force_sw) ? _EGL_INFO : _EGL_WARNING;
boolean use_shm;
_eglLog(level, "use software fallback");
ndpy = x11_create_ximage_display(dpy, TRUE);
/*
* 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;