Bug 15487 - X crash when xserver re-enter
Summary: X crash when xserver re-enter
Alias: None
Product: xorg
Classification: Unclassified
Component: Driver/intel (show other bugs)
Version: git
Hardware: x86 (IA32) Linux (All)
: medium normal
Assignee: Wang Zhenyu
QA Contact: Xorg Project Team
Depends on: 15848
  Show dependency treegraph
Reported: 2008-04-14 01:07 UTC by liuhaien
Modified: 2008-05-07 02:16 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:

xorg conf file (4.48 KB, text/plain)
2008-04-14 01:07 UTC, liuhaien
no flags Details
log (27.68 KB, text/plain)
2008-04-14 01:08 UTC, liuhaien
no flags Details

Description liuhaien 2008-04-14 01:07:11 UTC
Created attachment 15889 [details]
xorg conf file

Start X on display :0, then start another X on display :1, if switch VT, X will crashed with below backtrace info:

0: X(xf86SigHandler+0x65) [0x476a25]
1: /lib64/libc.so.6 [0x3d10430620]
2: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so [0x7f47934cc262]
3: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so [0x7f47934ced1f]
4: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so [0x7f47934d2c25]
5: X(AbortDDX+0x88) [0x45f2c8]
6: X(AbortServer+0x18) [0x4ead58]
7: X(FatalError+0xd5) [0x4eb335]
8: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so(I830WaitLpRing+0x165) [0x7f47934c7325]
9: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so(I830Sync+0x1a7) [0x7f47934c7707]
10: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so [0x7f47934d2ad8]
11: /opt/X11R7/lib64/xorg/modules/drivers//intel_drv.so [0x7f47934d3598]
12: X [0x46b39e]
13: X [0x488c25]
14: /opt/X11R7/lib64/xorg/modules/extensions//libglx.so [0x7f4793b6ff8f]
15: X(xf86Wakeup+0x3c1) [0x477651]
16: X(WakeupHandler+0x55) [0x449435]
17: X(WaitForSomething+0x1bb) [0x4debab]
18: X(Dispatch+0x7b) [0x4458db]
19: X(main+0x495) [0x42d715]
20: /lib64/libc.so.6(__libc_start_main+0xf4) [0x3d1041daa4]
21: X(FontFileCompleteXLFD+0xa1) [0x42cab9]

FatalError re-entered, aborting
Caught signal 11.  Server aborting

xterm:  fatal IO error 11 (Resource temporarily unavailable) or KillClient on X server ":0.0"
xinit:  connection to X server lost.

source version:
drm   master
        commit e89710bef7691e4e9d0bc7d427542bfae6ce4258

xf86_video_intel   xf86-video-intel-2.3-branch
        commit 24248097988775d62f6c416f2988e74d31c91cd0

xserver   master
        commit 539bf3c2836727e7560c64144071b086f8ea32fe
Comment 1 liuhaien 2008-04-14 01:08:04 UTC
Created attachment 15890 [details]
Comment 2 Raúl 2008-04-14 14:08:48 UTC
Same problem here: intel 965GM ( running debian unstable (64bits)

On my computer I use a first X server without dri (disabled from xorg.conf) and on a second server I enable dri, triplebuffer and pageflipping. xvmc is enabled on both.

When I fire up kdm on the second server X starts and little after crashes, eaving video useless. System is responsive but since I can't see anything I need to restart. Log and backtrace available. Totally repeatable up to now.

Comment 3 Raúl 2008-04-30 14:47:58 UTC
Sorry I meant intel driver version 2.2.903, but same problem on final 2.3.
Seems that there's some problem with enabling a 2nd server with dri acceleration. If I only fire the first one with dri disabled the problem doesn't reproduce. But as soon as I run a 2nd one with dri enabled (even after having shutdown the first one) video starts to behave strangely.

For example, when I fire up the 2nd xserver with dri on, I then go to my text virtual terminal using vesa frame buffer where I see one strange detail. On black background you won't notice anything but if you run anything more colourful (e.g.: aptitude ) you will see like a slow and very fine pitched raster going from left to right and once it the right border it starts over from the next line. If you leave the screen like this, xserver will end up hanging with the detailed backtrace and screen will be unusable after some xserver reboot trials.

Hope this helps,
Comment 4 Gordon Jin 2008-05-06 19:13:48 UTC
This is probably fixed in xf86-video-intel master branch. Please verify.

New commits:
commit 36ec93300926084fb2951d69b001e4c67bc6ff79
Author: Eric Anholt <eric@anholt.net>
Date:   Tue May 6 18:48:20 2008 -0700

    Bug #15807: Fix use of the ring while VT-switched, hit by fast user

    The fix for flushing at blockhandler with no DRI on 965 was broken and
    try to flush the chip even when the driver wasn't in control of the VT.
    Hilarity ensued.

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.