https://bugs.freedesktop.org/show_bug.cgi?id=31617
Summary: Radeon/Compiz: 'failed to attach dri2 front buffer', error case not handled Product: Mesa Version: 7.9 Platform: x86-64 (AMD64) OS/Version: Linux (All) Status: NEW Severity: normal Priority: medium Component: Drivers/DRI/R600 AssignedTo: dri-devel@lists.freedesktop.org ReportedBy: daniel.lichtenberger@gmail.com
Created an attachment (id=40267) --> (https://bugs.freedesktop.org/attachment.cgi?id=40267) backtrace
System: Fedora 14, Radeon 4850, x86_64.
Using the system's mesa-dri-drivers package Compiz frequently crashes while resizing windows. The backtrace (attached) and the error message, "failed to attach dri2 front buffer XX", point to radeon_update_renderbuffers in radeon_common_context.c around line 745:
bo = radeon_bo_open(...);
if (bo == NULL) {
fprintf(stderr, "failed to attach %s %d\n", regname, buffers[i].name);
}
ret = radeon_bo_get_tiling(bo, &tiling_flags, &pitch);
An error message is printed when 'bo' could not be allocated, but bo is then happily dereferenced in radeon_bo_get_tiling afterwards. Working around the null pointer dereference (e.g. by adding a 'continue' in the "if bo==NULL" block) fixes the crash for me and I haven't seen visual artifacts yet, although the error message is printed from time to time while running Compiz.
The same stacktrace was logged by several people over at https://bugzilla.redhat.com/show_bug.cgi?id=568593.
https://bugs.freedesktop.org/show_bug.cgi?id=31617
Alex Deucher agd5f@yahoo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #1 from Alex Deucher agd5f@yahoo.com 2010-11-14 22:37:36 PST --- Thanks. Fix pushed to master: ef0720758e5ba34d0d163bdf5efc6e8dabd65aa8 and 7.9: 9b1ac4d127805f6a14415596e4a557fad3d570a5
dri-devel@lists.freedesktop.org