Bug 31124 - [SNB] compiz stretch event causes X crash
Summary: [SNB] compiz stretch event causes X crash
Alias: None
Product: DRI
Classification: Unclassified
Component: DRM/Intel (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: high major
Assignee: Wang Zhenyu
QA Contact:
Depends on:
Reported: 2010-10-25 22:58 UTC by Yi Sun
Modified: 2017-10-06 14:53 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

xorg.0.log (39.54 KB, text/plain)
2010-10-25 23:00 UTC, Yi Sun
no flags Details
update wm push constant in new fragment program too (922 bytes, patch)
2010-11-01 20:12 UTC, Wang Zhenyu
no flags Details | Splinter Review

Description Yi Sun 2010-10-25 22:58:21 UTC
System Environment:
Libdrm:         (master)2.4.22-4-gc5286f4a871e054b63dee8a60a6f06574c4ca1b8
Mesa:           (master)8449a4772a73f613d9425b691cffba6a261df813
Cairo:          (master)6dc0b19adb6da690ad5944623081b9cdb42de066
Libva:          (master)6c372035373e531d2bb5608861adab3f6b2ff471
Kernel: 2.6.36-rc7

Bug detailed description:

Enable compiz and then run a windows application such as glxgear. Drag the window triggering the stretch effect repeatedly. Then the X can crash.

The X's backtrace when it crash is as following:

0: X (xorg_backtrace+0x3b) [0x809a78b]
1: X (0x8048000+0x5dc05) [0x80a5c05]
2: (vdso) (__kernel_rt_sigreturn+0x0) [0xb77cb40c]
3: X (FreeClientResources+0xed) [0x806fbbd]
4: X (CloseDownClient+0x69) [0x806e3a9]
5: X (0x8048000+0x26a2e) [0x806ea2e]
6: X (0x8048000+0x1a22a) [0x806222a]
7: /lib/libc.so.6 (__libc_start_main+0xe6) [0x8e2cc6]
8: X (0x8048000+0x19e01) [0x8061e01]
Segmentation fault at address 0xb5af500c

Bug reproduce steps:
1 enable compiz
2 run glxgear
3 drag the window
Comment 1 Yi Sun 2010-10-25 23:00:09 UTC
Created attachment 39773 [details]
Comment 2 Wang Zhenyu 2010-10-28 19:00:22 UTC
Looks I can't produce this, gears wobbly window is fine here.

Do you test with master branches?
Comment 3 Gordon Jin 2010-10-28 20:06:10 UTC
(In reply to comment #2)
> Looks I can't produce this, gears wobbly window is fine here.
> Do you test with master branches?

master branch for which component? Those commit info in the initial report fails to answer you?
Comment 4 Yi Sun 2010-11-01 18:43:27 UTC
(gdb) bt
#0  0xb73a8881 in do_bo_emit_reloc () from /opt/X11R7/lib/libdrm_intel.so.1
#1  0xb73a8b39 in drm_intel_gem_bo_emit_reloc ()
   from /opt/X11R7/lib/libdrm_intel.so.1
#2  0xb73a3758 in drm_intel_bo_emit_reloc ()
   from /opt/X11R7/lib/libdrm_intel.so.1
#3  0xb73ce963 in intel_batchbuffer_emit_reloc (batch=0x9c8c9e8, buffer=0x0,
    read_domains=2, write_domain=0, delta=0) at intel_batchbuffer.c:204
#4  0xb7421a52 in upload_wm_state (brw=0x9c53910) at gen6_wm_state.c:103
#5  0xb740587f in brw_upload_state (brw=0x9c53910) at brw_state_upload.c:460
#6  0xb73f6bc0 in brw_try_draw_prims (ctx=0x9c53910, arrays=0x9c986c4, prim=
    0xbfb40aec, nr_prims=1, ib=0x0, index_bounds_valid=1 '\001', min_index=0,
    max_index=3) at brw_draw.c:400
#7  brw_draw_prims (ctx=0x9c53910, arrays=0x9c986c4, prim=0xbfb40aec, nr_prims=
    1, ib=0x0, index_bounds_valid=1 '\001', min_index=0, max_index=3)
    at brw_draw.c:455
#8  0xb74ee560 in vbo_exec_DrawArrays (mode=7, start=0, count=4)
    at vbo/vbo_exec_array.c:526
#9  0xb74d4542 in neutral_DrawArrays (mode=7, start=0, count=4)
    at main/vtxfmt_tmp.h:327
#10 0x0806cdfb in ?? ()
#11 0x0806cc04 in drawWindowTexture ()
#12 0xb58800e5 in ?? () from /usr/lib/compiz/libwater.so
#13 0xb586949c in ?? () from /usr/lib/compiz/libvideo.so
Comment 5 Wang Zhenyu 2010-11-01 20:12:32 UTC
Created attachment 39973 [details] [review]
update wm push constant in new fragment program too

Sunyi, please test with this patch for mesa.
Comment 6 Yi Sun 2010-11-02 00:53:35 UTC
The patch works well!
I dragged the glxgears window for about 5 minutes continuely. Everything is normal.
Comment 7 Wang Zhenyu 2010-11-02 01:07:21 UTC
Patch pushed. Close.

commit aedc270966a3a6563d8c6eaf1f41095ab9cfef3e
Author: Zhenyu Wang <zhenyuw@linux.intel.com>
Date:   Tue Nov 2 11:08:58 2010 +0800

    i965: refresh wm push constant also for BRW_NEW_FRAMENT_PROGRAM on gen6
    Fix compiz crash.
Comment 8 Yi Sun 2010-11-02 01:18:07 UTC
I pulled the code from the branch and had a try.
So verified it.
Comment 9 Elizabeth 2017-10-06 14:53:31 UTC
Closing old verified.

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.