Bug 18966 - [gem] compiz (under indirect) with uxa crash
Summary: [gem] compiz (under indirect) with uxa crash
Status: VERIFIED FIXED
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/DRI/i965 (show other bugs)
Version: unspecified
Hardware: Other Linux (All)
: low normal
Assignee: Eric Anholt
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-08 18:25 UTC by zhao jian
Modified: 2009-04-01 20:12 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
xorg.conf (3.35 KB, text/plain)
2008-12-08 18:25 UTC, zhao jian
Details
log when used uxa to start compiz in gnome (58.60 KB, text/plain)
2008-12-08 18:28 UTC, zhao jian
Details

Description zhao jian 2008-12-08 18:25:58 UTC
Created attachment 20927 [details]
xorg.conf

xf86_video_intel   xf86-video-intel-2.6-branch
       commit b156b3165e1aae5df0353737d0335ac2e653f5fd
mesa   intel-2008-q4 branch  commit 154a9e5317f890618932cea0129ef887e16baf84
kernel  for-airlied branch  commit 66647dc60d16fae9f6963fd98b6d9baa1a8dac69
libdrm  master branch commit b0d93c74d884b40bd94469a5ef75fdb2fef17680


When compiz started when DRI2 is enabled, move the sidebar to top or when it at the bottom and select [System]->[Preference]->[Look and Feel]->[Desktop Effects],it will hang there or become blackscreen. After that if I restart X, it will hang again when I start gnome-session. Every time it hangs with the following information. 

Backtrace:
0: X(xorg_backtrace+0x3b) [0x812531b]
1: X(xf86SigHandler+0x51) [0x80be921]
2: [0xb7fd4400]
3: /lib/libc.so.6(__libc_calloc+0xef) [0x4379b97f]
4: /opt/X11R7/lib/dri/i965_dri.so [0xa79f45c0]
5: /opt/X11R7/lib/dri/i965_dri.so(intel_miptree_create_for_region+0x49) [0xa79f46f9]
6: /opt/X11R7/lib/dri/i965_dri.so(intelSetTexBuffer+0xd1) [0xa7a07681]
7: /opt/X11R7/lib/xorg/modules/extensions//libglx.so [0xb7e6431d]
8: /opt/X11R7/lib/xorg/modules/extensions//libglx.so [0xb7e56400]
9: /opt/X11R7/lib/xorg/modules/extensions//libglx.so [0xb7e550ba]
10: /opt/X11R7/lib/xorg/modules/extensions//libglx.so [0xb7e598d6]
11: X(Dispatch+0x32f) [0x80864cf]
12: X(main+0x3ad) [0x806c2cd]
13: /lib/libc.so.6(__libc_start_main+0xe6) [0x437405d6]
14: X [0x806b771]

Fatal server error:
Caught signal 11.  Server aborting

--------------------------
Reproduce Steps: 
1) modify the xorg.conf, to use uxa.
2) xinit&
3) gnome-session&
4) enable compiz
5) disable compiz
Comment 1 zhao jian 2008-12-08 18:28:33 UTC
Created attachment 20929 [details]
log when used uxa to start compiz in gnome
Comment 2 zhao jian 2008-12-10 19:33:39 UTC
In the Gnome with its compiz enabled, it sometimes crashed when clicked on tne icon [System]. Its debug info is as following:

(gdb) bt
#0  0x43799f0e in _int_malloc () from /lib/libc.so.6
#1  0x4379b97f in calloc () from /lib/libc.so.6
#2  0xa796f5c0 in intel_miptree_create_internal (intel=0x43890140,
    target=33091, internal_format=1133052272, first_level=0, last_level=0,
    width0=1280, height0=800, depth0=1, cpp=4, compress_byte=0)
    at intel_mipmap_tree.c:63
#3  0xa796f6f9 in intel_miptree_create_for_region (intel=0x830eb70,
    target=34037, internal_format=4, first_level=0, last_level=0,
    region=0x8999be0, depth0=1, compress_byte=0) at intel_mipmap_tree.c:145
#4  0xa7982681 in intelSetTexBuffer (pDRICtx=0x82f1508, target=34037,
    dPriv=0x89996a8) at intel_tex_image.c:746
#5  0xb7dd831d in __glXDRIbindTexImage (baseContext=0x82f1680, buffer=8414,
    glxPixmap=0x8143) at glxdri2.c:221
#6  0xb7dca400 in __glXDisp_BindTexImageEXT (cl=0x82e58a0,
    pc=0xa70500b0 "\227\020\006") at glxcmds.c:1535
#7  0xb7dc90ba in __glXDisp_VendorPrivate (cl=0x82e58a0,
    pc=0xa70500b0 "\227\020\006") at glxcmds.c:2250
#8  0xb7dcd8d6 in __glXDispatch (client=0x82e5530) at glxext.c:523
#9  0x080864cf in Dispatch () at dispatch.c:437
#10 0x0806c2cd in main (argc=2, argv=0xbfe47e24, envp=0x9764368) at main.c:383
Comment 3 Gordon Jin 2008-12-15 01:01:16 UTC
Since the compiz (in Fedora 9) is launched with indirect, decreasing the bug priority.

And Eric, your understanding is correct: this happens after some operations (moving sidebar or click [Desktop Effects]), not immediately after compiz started.
Comment 4 Eric Anholt 2009-01-07 02:26:43 UTC
That line is:
   struct intel_mipmap_tree *mt = calloc(sizeof(*mt), 1);

Something has seriously smashed the heap, I'm guessing.
Comment 5 zhao jian 2009-03-18 23:19:49 UTC
It doesn't have such problems on gm45-32bit in UXA with compiz on. 
With the following configuration:
Kernel_version:         2.6.29-rc6
Libdrm:         (master)2e2e8575b1ed4703653a72ac2b60b75316c388d7
Mesa:            (mesa_7_4_branch)a8528a2e8653b5237c1d1d66fe98c6e031d007f9
Xserver:         (server-1.6-branch)60c161545af80eb78eb790a05bde79409dfdf16e
Xf86_video_intel:      (2.7)238c2c40afd9f8b61479b8640d53f20d52fd7ddf
Comment 6 zhao jian 2009-04-01 20:12:55 UTC
It is OK with the newest code. 
Libdrm:         (master) 51d6346f9f3c425f49e57d185530c6bcaeb94f5e
Mesa:           (mesa_7_4_branch)781fb79c596cb6b153645c86c89ba2930521aeef
Xserver:        (server-1.6-branch)60c161545af80eb78eb790a05bde79409dfdf16e
Xf86_video_intel:    (2.7)e2465249a90b9aefe6d7a96eb56a51fde54698a0


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.