[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 01:15:07 UTC 2016


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), 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