[Mesa-dev] [PATCH 01/20] gallium/radeon: derive buffer placement and flags only at initialization

Michel Dänzer michel at daenzer.net
Mon Sep 12 03:30:56 UTC 2016


On 12/09/16 10:15 AM, Michel Dänzer wrote:
> On 30/08/16 12:28 AM, Marek Olšák wrote:
>> From: Marek Olšák <marek.olsak at amd.com>
>>
>> Invalidated buffers don't have to go through it.
>>
>> Split r600_init_resource into r600_init_resource_fields and
>> r600_alloc_resource.
> 
> This change caused Portal 2 to crash for me (with Kaveri using the
> radeon kernel driver),

On another machine using the amdgpu kernel driver (also with Kaveri), it
doesn't crash, but the intro videos and main menu background are
severely corrupted.


> see below. Let me know if you need more information.
> 
> 
> Thread 1 "portal2_linux" received signal SIGSEGV, Segmentation fault.
> 0xf4c3f500 in util_copy_rect (dst=0xe57fa000 <error: Cannot access memory at address 0xe57fa000>, format=<optimized out>, dst_stride=<optimized out>, dst_x=<optimized out>, dst_y=<optimized out>, width=640, height=<optimized out>, 
>     src=0xe0fc000 '\200' <repeats 200 times>..., src_stride=<optimized out>, src_x=<optimized out>, src_y=<optimized out>) at ../../../../src/gallium/auxiliary/util/u_surface.c:105
> 105	         memcpy(dst, src, width);
> (gdb) bt
> #0  0xf4c3f500 in util_copy_rect (dst=0xe57fa000 <error: Cannot access memory at address 0xe57fa000>, format=<optimized out>, dst_stride=<optimized out>, dst_x=<optimized out>, dst_y=<optimized out>, width=640, height=<optimized out>, 
>     src=0xe0fc000 '\200' <repeats 200 times>..., src_stride=<optimized out>, src_x=<optimized out>, src_y=<optimized out>) at ../../../../src/gallium/auxiliary/util/u_surface.c:105
> #1  0xf4c3f616 in util_copy_box (dst=0xe57be000 <error: Cannot access memory at address 0xe57be000>, format=PIPE_FORMAT_L8_SRGB, dst_stride=768, dst_slice_stride=276480, dst_x=0, dst_y=0, dst_z=0, width=640, height=360, depth=1, 
>     src=0xe0ca000 '\200' <repeats 200 times>..., src_stride=640, src_slice_stride=230400, src_x=0, src_y=0, src_z=0) at ../../../../src/gallium/auxiliary/util/u_surface.c:131
> #2  0xf4c4400e in u_default_texture_subdata (pipe=0xa18a000, resource=0xd6d0800, level=0, usage=258, box=0xff826b38, data=0xe0ca000, stride=640, layer_stride=230400) at ../../../../src/gallium/auxiliary/util/u_transfer.c:67
> #3  0xf4a62123 in st_TexSubImage (ctx=0xa344000, dims=2, texImage=0xd666900, xoffset=0, yoffset=0, zoffset=0, width=640, height=360, depth=1, format=6409, type=5121, pixels=0xe0ca000, unpack=0xa35be3c) at ../../../src/mesa/state_tracker/st_cb_texture.c:1400
> #4  0xf49ed48d in _mesa_texture_sub_image (ctx=0xa344000, dims=2, texObj=0xd167b80, texImage=0xd666900, target=3553, level=0, xoffset=0, yoffset=0, zoffset=0, width=640, height=360, depth=1, format=6409, type=5121, pixels=0xe0ca000, dsa=false)
>     at ../../../src/mesa/main/teximage.c:3239
> #5  0xf49ed696 in texsubimage (ctx=0xa344000, dims=2, target=3553, level=0, xoffset=0, yoffset=0, zoffset=0, width=640, height=360, depth=1, format=6409, type=5121, pixels=0xe0ca000, callerName=0xf4d9380a "glTexSubImage2D")
>     at ../../../src/mesa/main/teximage.c:3297
> #6  0xf49ed98a in _mesa_TexSubImage2D (target=3553, level=0, xoffset=0, yoffset=0, width=640, height=360, format=6409, type=5121, pixels=0xe0ca000) at ../../../src/mesa/main/teximage.c:3438
> #7  0xf5792b98 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/libtogl.so
> #8  0xf5792db5 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/libtogl.so
> #9  0xf579f84b in IDirect3DSurface9::UnlockRect() () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/libtogl.so
> #10 0xed478ddb in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/shaderapidx9.so
> #11 0xed466cb3 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/shaderapidx9.so
> #12 0xedfdce2b in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/materialsystem.so
> #13 0xedfdda41 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/materialsystem.so
> #14 0xedfddbf8 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/materialsystem.so
> #15 0xedfddc62 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/materialsystem.so
> #16 0xed88050f in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/valve_avi.so
> #17 0xed8806c8 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/valve_avi.so
> #18 0xee87fd62 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #19 0xee87f316 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #20 0xee87ec53 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #21 0xee87ccf5 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #22 0xee87d5ff in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #23 0xee877536 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #24 0xee878890 in ?? () from /home/daenzer/.steam/steam/steamapps/common/Portal 2/bin/engine.so
> #25 0xf5d5ac00 in ?? ()
> #26 0xf5d5ac00 in ?? ()
> #27 0xf5d3e41a in ?? ()
> #28 0x08048564 in main ()
> 
> 
> 


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer


More information about the mesa-dev mailing list