Bug 93737

Summary: egl segfault since gallium/radeon: implement PIPE_CAP_INVALIDATE_BUFFER
Product: Mesa Reporter: Andy Furniss <adf.lists>
Component: Drivers/Gallium/radeonsiAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED FIXED QA Contact: Default DRI bug account <dri-devel>
Severity: normal    
Priority: medium CC: nhaehnle
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Andy Furniss 2016-01-16 15:59:57 UTC
R9285 first noticed trying to set up wayland/weston, bisected with eglgears_x11.

Since -

commit 321140d563730b210e6390c5b73c09fdcf9649af
Author: Nicolai Hähnle <nicolai.haehnle@amd.com>
Date:   Thu Jan 14 09:41:04 2016 -0500

    gallium/radeon: implement PIPE_CAP_INVALIDATE_BUFFER

I get segfaults trying to run egl.

bt from gears

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff239fb23 in r600_do_invalidate_resource (rctx=0x692b30, rbuffer=0x0) at r600_buffer_common.c:219
219             if (rctx->ws->buffer_is_user_ptr(rbuffer->buf))
(gdb) bt
#0  0x00007ffff239fb23 in r600_do_invalidate_resource (rctx=0x692b30, rbuffer=0x0) at r600_buffer_common.c:219
#1  0x00007ffff2210dd2 in dri_flush (cPriv=<optimized out>, dPriv=<optimized out>, flags=5, reason=<optimized out>) at dri_drawable.c:496
#2  0x00007ffff645ddb8 in dri2_x11_swap_buffers_msc (msc=0, divisor=0, remainder=0, drv=<optimized out>, draw=0x6f9160, disp=<optimized out>) at drivers/dri2/platform_x11.c:837
#3  dri2_x11_swap_buffers (drv=<optimized out>, disp=<optimized out>, draw=0x6f9160) at drivers/dri2/platform_x11.c:873
#4  0x00007ffff6453d76 in eglSwapBuffers (dpy=0x62af30, surface=<optimized out>) at main/eglapi.c:1010
#5  0x0000000000403a71 in _eglutNativeEventLoop () at eglut_x11.c:249
#6  0x000000000040328b in eglutMainLoop () at eglut.c:272
#7  0x0000000000401d16 in main (argc=1, argv=0x7fffffffe108) at eglgears.c:298
Comment 1 Nicolai Hähnle 2016-01-16 19:48:41 UTC
Sorry for the regression. I believe Michel already has a fix for this, see https://patchwork.freedesktop.org/patch/70592/
Comment 2 Nicolai Hähnle 2016-01-16 19:49:41 UTC
You may also need this one: https://patchwork.freedesktop.org/patch/70593/
Comment 3 Andy Furniss 2016-01-16 22:02:01 UTC
Thanks, they do fix it for me.

I'll close when they are in.
Comment 4 Michel Dänzer 2016-01-18 08:51:11 UTC
Module: Mesa
Branch: master
Commit: 0491dd1deb46ca77545322c53e90f86ae244cdae
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=0491dd1deb46ca77545322c53e90f86ae244cdae

Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Fri Jan 15 15:46:31 2016 +0900

st/dri: Don't call invalidate_resource for NULL depth/stencil buffers

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.