From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 56966] New: [r300g, bisected] multiple piglit tests crash in r300_draw_arrays_immediate Date: Sat, 10 Nov 2012 20:33:38 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1792374203==" Return-path: Received: from culpepper.freedesktop.org (unknown [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id C86AE9EB4B for ; Sat, 10 Nov 2012 12:33:38 -0800 (PST) List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org Errors-To: dri-devel-bounces+sf-dri-devel=m.gmane.org@lists.freedesktop.org To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1792374203== Content-Type: multipart/alternative; boundary="1352579618.dd4fdDDA1.10613"; charset="us-ascii" --1352579618.dd4fdDDA1.10613 Date: Sat, 10 Nov 2012 20:33:38 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable https://bugs.freedesktop.org/show_bug.cgi?id=3D56966 Priority: medium Bug ID: 56966 Keywords: regression CC: maraeo@gmail.com Assignee: dri-devel@lists.freedesktop.org Summary: [r300g, bisected] multiple piglit tests crash in r300_draw_arrays_immediate Severity: normal Classification: Unclassified OS: All Reporter: pavel.ondracka@email.cz Hardware: Other Status: NEW Version: git Component: Drivers/Gallium/r300 Product: Mesa Crashing tests are glsl-novertexdata, glsl-vs-point-size, vp-ignore-input a= nd pos-array. First bad commit commit e73bf3b805de78299f1a652668ba4e6eab9bac94 Author: Marek Ol=C5=A1=C3=A1k Date: Thu Mar 29 17:51:50 2012 +0200 gallium: add start_slot parameter to set_vertex_buffers This allows updating only a subrange of buffer bindings. set_vertex_buffers(pipe, start_slot, count, NULL) unbinds buffers in th= at range. Binding NULL resources unbinds buffers too (both buffer and user_buff must be NULL). The meta ops are adapted to only save, change, and restore the single s= lot they use. The cso_context can save and restore only one vertex buffer s= lot. The clients can query which one it is using cso_get_aux_vertex_buffer_s= lot. It's currently set to 0. (the Draw module breaks if it's set to non-zer= o) It should decrease the CPU overhead when using a lot of meta ops, but the drivers must be able to treat each vertex buffer slot as a separate state (only r600g does so at the moment). I can imagine this also being useful for optimizing some OpenGL use cas= es. Backtrace from pos-array -auto : #0 r300_draw_arrays_immediate (r300=3Dr300@entry=3D0x8059c60, info=3Dinfo@entry=3D0xbfffeac0) at r300_render.c:375 #1 0xb6bb0bbc in r300_draw_vbo (pipe=3D0x8059c60, dinfo=3D0xbfffed10) at r300_render.c:838 #2 0xb6e0d538 in u_vbuf_draw_vbo (mgr=3D0x84cd7f0, info=3Dinfo@entry=3D0xb= fffed10) at util/u_vbuf.c:1056 #3 0xb6db16ea in cso_draw_vbo (cso=3D0x84cd048, info=3Dinfo@entry=3D0xbfff= ed10) at cso_cache/cso_context.c:1331 #4 0xb6c91482 in st_draw_vbo (ctx=3D0x845e6b0, prims=3D0xbfffed90, nr_prim= s=3D1, ib=3D0x0, index_bounds_valid=3D1 '\001', min_index=3D0, max_index=3D0,=20 tfb_vertcount=3D0x0) at ../../src/mesa/state_tracker/st_draw.c:265 #5 0xb6d663f2 in vbo_draw_arrays (ctx=3Dctx@entry=3D0x845e6b0, mode=3Dmode= @entry=3D0, start=3Dstart@entry=3D0, count=3Dcount@entry=3D1,=20 numInstances=3DnumInstances@entry=3D1, baseInstance=3DbaseInstance@entr= y=3D0) at ../../src/mesa/vbo/vbo_exec_array.c:619 #6 0xb6d665e1 in vbo_exec_DrawArrays (mode=3D0, start=3D0, count=3D1) at ../../src/mesa/vbo/vbo_exec_array.c:649 #7 0x08049771 in test_glsl_no_arrays () at /home/Paulie/piglit/tests/general/pos-array.c:321 #8 0x08049d68 in piglit_display () at /home/Paulie/piglit/tests/general/pos-array.c:518 #9 0xb7eed014 in display () at /home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:= 60 #10 0xb7fbe754 in fghRedrawWindow (window=3D0x8057758) at freeglut_main.c:2= 07 #11 fghcbDisplayWindow (window=3D0x8057758, enumerator=3D0xbfffef74) at freeglut_main.c:224 #12 0xb7fc2337 in fgEnumWindows (enumCallback=3DenumCallback@entry=3D0xb7fb= e6c0 , enumerator=3Denumerator@entry=3D0xbfffef74) at freeglut_structure.c:396 #13 0xb7fbec78 in fghDisplayAll () at freeglut_main.c:247 #14 glutMainLoopEvent () at freeglut_main.c:1485 #15 0xb7fbf4f8 in glutMainLoop () at freeglut_main.c:1533 #16 0xb7eed20d in run_test (gl_fw=3D0xb7fa7ac0, argc=3D1, argv=3D0xbffff234) at /home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:= 127 #17 0xb7eeb31c in piglit_gl_test_run (argc=3D1, argv=3D0xbffff234, config=3D0xbffff16c) at /home/Paulie/piglit/tests/util/piglit-framework-gl.c:127 #18 0x0804903f in main (argc=3D1, argv=3D0xbffff234) at /home/Paulie/piglit/tests/general/pos-array.c:41 GPU:RV530 Mesa: 5581954c3aa0c2418440700b3763882e37728914 Kernel: 3.6.2-4.fc17.i686 Libdrm: 2.4.40 --=20 You are receiving this mail because: You are the assignee for the bug. --1352579618.dd4fdDDA1.10613 Date: Sat, 10 Nov 2012 20:33:38 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Priority medium
Bug ID 56966
Keywords regression
CC maraeo@gmail.com
Assignee dri-devel@lists.freedesktop.org
Summary [r300g, bisected] multiple piglit tests crash in r300_draw_ar= rays_immediate
Severity normal
Classification Unclassified
OS All
Reporter pavel.ondracka@email.cz
Hardware Other
Status NEW
Version git
Component Drivers/Gallium/r300
Product Mesa

Crashing tests are glsl-novertexdata, glsl-vs-point-size, vp-i=
gnore-input and
pos-array.

First bad commit
commit e73bf3b805de78299f1a652668ba4e6eab9bac94
Author: Marek Ol=C5=A1=C3=A1k <m=
araeo@gmail.com>
Date:   Thu Mar 29 17:51:50 2012 +0200

    gallium: add start_slot parameter to set_vertex_buffers

    This allows updating only a subrange of buffer bindings.

    set_vertex_buffers(pipe, start_slot, count, NULL) unbinds buffers in th=
at
    range. Binding NULL resources unbinds buffers too (both buffer and
user_buff
    must be NULL).

    The meta ops are adapted to only save, change, and restore the single s=
lot
    they use. The cso_context can save and restore only one vertex buffer s=
lot.
    The clients can query which one it is using cso_get_aux_vertex_buffer_s=
lot.
    It's currently set to 0. (the Draw module breaks if it's set to non-zer=
o)

    It should decrease the CPU overhead when using a lot of meta ops, but
    the drivers must be able to treat each vertex buffer slot as a separate
    state (only r600g does so at the moment).

    I can imagine this also being useful for optimizing some OpenGL use cas=
es.

Backtrace from pos-array -auto :
#0  r300_draw_arrays_immediate (r300=3Dr300@entry=3D0x8059c60,
info=3Dinfo@entry=3D0xbfffeac0) at r300_render.c:375
#1  0xb6bb0bbc in r300_draw_vbo (pipe=3D0x8059c60, dinfo=3D0xbfffed10) at
r300_render.c:838
#2  0xb6e0d538 in u_vbuf_draw_vbo (mgr=3D0x84cd7f0, info=3Dinfo@entry=
=3D0xbfffed10)
at util/u_vbuf.c:1056
#3  0xb6db16ea in cso_draw_vbo (cso=3D0x84cd048, info=3Dinfo@entry=3D0x=
bfffed10) at
cso_cache/cso_context.c:1331
#4  0xb6c91482 in st_draw_vbo (ctx=3D0x845e6b0, prims=3D0xbfffed90, nr_prim=
s=3D1,
ib=3D0x0, index_bounds_valid=3D1 '\001', min_index=3D0, max_index=3D0,=20
    tfb_vertcount=3D0x0) at ../../src/mesa/state_tracker/st_draw.c:265
#5  0xb6d663f2 in vbo_draw_arrays (ctx=3Dctx@entry=3D0x845e6b0, mode=3D=
mode@entry=3D0,
start=3Dstart@entry=3D0, count=3Dcount@entry=3D1,=20
    numInstances=3DnumInstances@entry=3D1, baseInstance=3DbaseInstance&=
#64;entry=3D0) at
../../src/mesa/vbo/vbo_exec_array.c:619
#6  0xb6d665e1 in vbo_exec_DrawArrays (mode=3D0, start=3D0, count=3D1) at
../../src/mesa/vbo/vbo_exec_array.c:649
#7  0x08049771 in test_glsl_no_arrays () at
/home/Paulie/piglit/tests/general/pos-array.c:321
#8  0x08049d68 in piglit_display () at
/home/Paulie/piglit/tests/general/pos-array.c:518
#9  0xb7eed014 in display () at
/home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:=
60
#10 0xb7fbe754 in fghRedrawWindow (window=3D0x8057758) at freeglut_main.c:2=
07
#11 fghcbDisplayWindow (window=3D0x8057758, enumerator=3D0xbfffef74) at
freeglut_main.c:224
#12 0xb7fc2337 in fgEnumWindows (enumCallback=3DenumCallback@entry=3D0x=
b7fbe6c0
<fghcbDisplayWindow>, enumerator=3Denumerator@entry=3D0xbfffef74)
    at freeglut_structure.c:396
#13 0xb7fbec78 in fghDisplayAll () at freeglut_main.c:247
#14 glutMainLoopEvent () at freeglut_main.c:1485
#15 0xb7fbf4f8 in glutMainLoop () at freeglut_main.c:1533
#16 0xb7eed20d in run_test (gl_fw=3D0xb7fa7ac0, argc=3D1, argv=3D0xbffff234)
    at
/home/Paulie/piglit/tests/util/piglit-framework-gl/piglit_glut_framework.c:=
127
#17 0xb7eeb31c in piglit_gl_test_run (argc=3D1, argv=3D0xbffff234,
config=3D0xbffff16c)
    at /home/Paulie/piglit/tests/util/piglit-framework-gl.c:127
#18 0x0804903f in main (argc=3D1, argv=3D0xbffff234) at
/home/Paulie/piglit/tests/general/pos-array.c:41

GPU:RV530
Mesa: 5581954c3aa0c2418440700b3763882e37728914
Kernel: 3.6.2-4.fc17.i686
Libdrm: 2.4.40


You are receiving this mail because: =20=20=20=20=20=20
  • You are the assignee for the bug.
--1352579618.dd4fdDDA1.10613-- --===============1792374203== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/dri-devel --===============1792374203==--