Bug 18433

Summary: [GM965] clutter 0.84 can freeze the X server (was [GM965] clutter 0.82 can freeze the X server)
Product: xorg Reporter: Philip Ashmore <contact>
Component: Driver/intelAssignee: Jesse Barnes <jbarnes>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: contact, eich, kent.liu, libv, mat, quanxian.wang, shuang.he, sndirsch
Version: unspecified   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Philip Ashmore 2008-11-07 20:47:41 UTC
I reported this to OpenedHand
http://bugzilla.openedhand.com/show_bug.cgi?id=1243
and Novell/OpenSuse
https://bugzilla.novell.com/show_bug.cgi?id=442824

Submitting upstream and adding cc as requested.

To summarise, running the test programs after downloading / building / installing clutter can freeze the X server.

When the application window is moved off screen the part still visible displays distortion/corruption and when moved back the X server freezes.

Try it a couple of times in case it doesn't freeze straight away.

glxgears exhibits no such behavior although considering the hardware I've got it should be faster full screen.

Some of the test applications fail because of insufficient hardware capability but they should detect that and fail more gracefully.

Look at both of the above links as I submitted logs to both as requested.
Comment 1 Gordon Jin 2008-11-09 17:08:00 UTC
Please attach Xorg log file here, and provide the specific driver/opensuse version you are using.
Comment 2 Stefan Dirsch 2008-11-09 21:24:08 UTC
openSUSE 11.0 means

- xorg-server 1.4.0.90
- xf86-video-intel 2.3.1
- libdrm 2.3.0
- Mesa 7.0.3
- Kernel 2.6.25.18
Comment 3 Philip Ashmore 2008-11-10 06:05:03 UTC
See
    https://bugzilla.novell.com/attachment.cgi?id=250780
This xorg.log.old attachment should provide you with the information you need.

It's attached to the Novell/OpenSuse bug report I made when I reported this bug.
    https://bugzilla.novell.com/show_bug.cgi?id=442824
Comment 4 Stefan Dirsch 2008-11-10 06:19:50 UTC
Philip, please attach your logs and informations to the freedesktop bugzilla and don't refer to Novell's bugzilla. Thanks.
Comment 5 Jesse Barnes 2008-11-10 14:21:47 UTC
There have been many changes in this area since Mesa 7.0.x and Linux 2.6.25.x, would it be possible for you to try newer versions?  In particular, the kernel tree at git://git.kernel.org/pub/scm/linux/kernel/git/anholt/drm-intel.git (drm-intel-next branch) and the latest Mesa bits from git have several fixes for window movement, vblank sync'ing and interrupt handling, all of which could be related to this bug.  There are some build instructions and a script for setting up an parallel install of X (so as not to overwrite your distro packages) at http://wiki.x.org/wiki/Development/git.

But maybe Stefan can point you at some updated openSUSE packages to make things easier...
Comment 6 Stefan Dirsch 2008-11-10 14:30:11 UTC
Should be easier to install the updated X.Org packages build for 11.0 from our buildservice.

  http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.0/

Update at least

- libdrm
- Mesa
- xorg-x11-server
- xorg-x11-driver-input
- xorg-x11-driver-video

This is Intel 2008 Q3 release.
Comment 7 Philip Ashmore 2008-11-10 20:23:27 UTC
I updated as requested.
> glxgears
305 frames in 5.0 seconds = 60.813 FPS
311 frames in 5.0 seconds = 62.144 FPS
311 frames in 5.0 seconds = 62.146 FPS
<and full screen>
307 frames in 5.0 seconds = 61.271 FPS
311 frames in 5.0 seconds = 62.145 FPS

However
* the kicker panel display is corrupted at the top one or two pixels (garbage left behind)
* there were black horizontal lines on the display with the window normal size
* there were black horizontal lines on the window caption with the window full size

running "test-actors" is now a lot worse than that and leaves a lot of black horizontal lines on the display to the right of its window.
Comment 8 Philip Ashmore 2008-11-15 17:05:48 UTC
Is there an OpenSuse way of removing the
  http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.0/
repository and downgrading any updates that originated from this repository?

My only other alternative is to reinstall from scratch.

This update has made things worse.
Comment 9 Stefan Dirsch 2008-11-22 02:29:18 UTC
(In reply to comment #8)
> Is there an OpenSuse way of removing the
>   http://download.opensuse.org/repositories/X11:/XOrg/openSUSE_11.0/
> repository and downgrading any updates that originated from this repository?

Simply replace the packages you've updated with the packages from CD/DVD. Package list. See comment #6.
Comment 10 Philip Ashmore 2008-11-22 02:59:06 UTC
The indicated updates pulled in a whole rake of other updates.
I was looking for a yast way of saying "disable this repo and downgrade/switch repos for any packages obtained from it".

To put it another way, is there yast functionality that I'm not aware of to replace the packages you've updated (via a new repository A) with the packages from remaining repositories - A?

I ended up re-installing from scratch.
Is this the standard way of working with test repositories?
Comment 11 Stefan Dirsch 2008-11-22 03:22:58 UTC
>To put it another way, is there yast functionality that I'm not aware of to
>replace the packages you've updated (via a new repository A) with the >packages from remaining repositories - A?

Could be. I suggest to ask this on an openSUSE ML. Thanks.
Comment 12 Philip Ashmore 2008-11-23 01:15:55 UTC
I'm getting the same problem with crystalspace http://www.crystalspace3d.org

I tried /usr/bin/csbench from the crystalspace-utils package - it freezes the machine!
Comment 13 Gordon Jin 2008-12-05 22:46:23 UTC
Shuang, can you reproduce the issues with the latest code?
Comment 14 Shuang He 2008-12-18 01:40:09 UTC
I have tried following with latest bits didn't met the issue:
run clutter/tests/test-depth or test-rotate, drag the window to offscrean and back, it's working well.

Comment 15 Shuang He 2008-12-18 01:40:41 UTC
So mark as fixed, if you still meet this issue, feel free to reopen it.
Comment 16 qwang13 2008-12-29 01:28:07 UTC
Philips

Desktop Effect will affect the appearance of clutter. If you enable desktop effect,the speed will slow. It is general.

You can disable desktop effect and check what opens.

Disable Desktop Effect Step:
1) simple-ccsm
2) uncheck Enable desktop effects box

I don't find xserver crash issue. 
Comment 17 Philip Ashmore 2008-12-29 07:08:52 UTC
My machine type is
    Compaq Presario A900 Notebook PC
It's smolt data is at
    http://www.smolts.org/show?uuid=pub_834d3321-d659-4ae9-ab6f-09a7f19cd343

It's possible that this problem is specific to my machine configuration.
I installed OpenSuse 11.1 from 11.0 since I made the bug report.
Details:
    OpenSuse 11.1
    x86_64
    Intel GL960 Integrated Graphics Controller (aka GM965).
    Intel Pentium Dual CPU T2390 @ 1.86GHz
    3723.95 BogoMIPS
    Kernel 2.6.27.7-9-default
    SELinux not installed/enabled
    Compiz isn't installed

Running the tests gives:
test-actors            [OK]
test-behave            [OK]
test-clip              [OK]
test-cogl-offscreen
    Loading redhand.png
    Creating texture with size
    Creating offscreen
    Failed creating offscreen to texture!
    Segmentation fault
test-cogl-primitives   [WARN cannot be closed by Alt-F4 or close window button - Ctrl-C works though]
    (/v3c/local-repos/clutter/clutter-0.8.2/tests/.libs/lt-test-cogl-primitives:4501): Clutter-CRITICAL **: clutter_main_quit: assertion `main_loops != NULL' failed
test-cogl-tex-convert  [OK]
test-cogl-tex-foreign  [OK]
test-cogl-tex-getset   [OK]
test-cogl-tex-polygon  [OK]
test-cogl-tex-tile     [OK]
test-depth             [OK]
test-devices           [FAIL]
    (process:4741): GLib-GObject-CRITICAL **: gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function

    (process:4741): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

    (process:4741): GLib-GObject-CRITICAL **: gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function

    (process:4741): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

    (process:4741): GLib-GObject-CRITICAL **: gtype.c:2458: initialization assertion failed, use IA__g_type_init() prior to this function

    (process:4741): GLib-CRITICAL **: g_once_init_leave: assertion `initialization_value != 0' failed

    (process:4741): GLib-GObject-CRITICAL **: g_object_new: assertion `G_TYPE_IS_OBJECT (object_type)' failed
test-effects           [OK]
test-entry             [WARN]
Window is initially garbled with white-black strips along the top of the window.
Dragging off screen and back or covering /uncovering forces a redraw - then it's ok.
Curiously after running test-entry-auto it works just fine!
test-entry-auto        [WARN] nothing displayed!
test-events            [OK]
test-fbo               [FAIL]
    ** ERROR **: This test requires CLUTTER_FEATURE_OFFSCREEN
    aborting...
    Aborted
test-fullscreen        [OK]
test-grab              [OK]
test-invariants        [OK]
test-label-cache       [OK]
test-layout            [WARN]
Black/white lines at the top of the window - disappear when window is redrawn - see test-entry.
test-model             [OK]
test-multistage        [OK]
test-offscreen         [FAIL]
    SUCCESS: Able to setup offscreen rendering
...and then nothing happens! Ctrl-C ends what ever it was doing.
test-opacity           [OK]
test-paint-wrapper     [OK]
test-perspective       [FAIL]
Draws a white rectangle at the top-left of the screen and then does nothing. Alt-F4 quits.
test-pick              [OK]
test-pixmap            [OK]
test-project           [OK]
test-random-text       [OK]
test-rotate            [OK]
test-scale             [OK]
test-score             [OK]
test-script            [OK]
test-shader            [HOLY CRAP]
The X server hangs - keyboard non functional.
I can move the mouse around but it's cursor doesn't change.
5 seconds on the power off button is the only solution.
test-stage-read-pixels [OK]
test-text              [OK]
test-texture-quality   [OK]
test-textures          [HOLY CRAP]
The X server hangs - keyboard non functional.
I can move the mouse around but it's cursor doesn't change.
5 seconds on the power off button is the only solution.
test-threads           [OK]
test-timeline          [WARN] outputs some text but Ctrl-C required to finish it.
test-timeline-dup-frames [OK]
test-timeline-interpolate [OK]
test-timeline-rewind   [OK]
test-timeline-smoothness [OK]
test-unproject         [OK]
test-viewport          [OK]
Comment 18 qwang13 2008-12-29 18:01:55 UTC
That is fine. 
I have reproduced this problem. Just run the test case 
./test-texture can make xserver freeze.

From log 
[mi] EQ overflowing. The server is probably stuck in an infinite loop.
[mi] mieqEnequeue: out-of-order valuator event; dropping.
[mi] EQ overflowing. The server is probably stuck in an infinite loop.
[mi] mieqEnequeue: out-of-order valuator event; dropping.
[mi] EQ overflowing. The server is probably stuck in an infinite loop.
[mi] mieqEnequeue: out-of-order valuator event; dropping.
[mi] EQ overflowing. The server is probably stuck in an infinite loop.
[mi] mieqEnequeue: out-of-order valuator event; dropping.
[mi] EQ overflowing. The server is probably stuck in an infinite loop.
[mi] mieqEnequeue: out-of-order valuator event; dropping.

Comment 19 qwang13 2008-12-30 23:52:34 UTC
Please have a try opensuse-11.1 gold master with clutter 0.84.
I have tried them. 

It works fine.
Comment 20 Philip Ashmore 2008-12-31 01:20:23 UTC
I must have missed clutter 0.84 - released December 1st 2008.

Bug title changed to 0.84.
I'll focus on the two show stoppers from here on.

I tried test-shader  - [HANG]
The X server hangs - keyboard non functional.
I can move the mouse around but it's cursor doesn't change.
5 seconds on the power off button is the only solution.

test-textures          [HANG] (not test-texture!)
It gets as far as "2901x2901 texture and then...
The X server hangs - keyboard non functional.
I can move the mouse around but it's cursor doesn't change.
5 seconds on the power off button is the only solution.

having to hard-reboot my machine is probably not a good thing - all those orphaned inodes!

I don't know what "opensuse-11.1 gold master" is - I'm using opensuse release 11.1.

Are you using the same machine as I am?
Comment 21 qwang13 2008-12-31 22:03:29 UTC
I use T61 (965GM, Levono). The gold master should be official release of openSuse11.1. 

I testing text-textures it will go to 4000 above and exit with assertion problem. However xserver works still fine.

If you use openSUSE11.0, I prefer you try on openSUSE11.1 which has latest graphics driver from Intel Q3 release. 

Comment 22 qwang13 2009-01-13 20:36:50 UTC
Please got the patch from 19242, and try to build Mesa with it. Try again. The patch is based on Intel-Q3 release (2008) which it is used also by openSUSE11.1 and SLED11-RC1.

Don't need to set ExaNoComposite
Comment 23 Stefan Dirsch 2009-01-16 04:06:46 UTC
Applied the patch from Bug #19242. EXANoComposite *not* set. Running test-textures now runs fine until last one (5003x5003). Closing as duplicate.

*** This bug has been marked as a duplicate of bug 19242 ***

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.