Bug 10157

Summary: Screen reinitialises every time client quits in modesetting branch
Product: xorg Reporter: Matthew Hodgson <matthew>
Component: Driver/intelAssignee: Eric Anholt <eric>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: Other   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log showing screen reinitialisation at client exit
none
xorg.conf used to generate the attached log none

Description Matthew Hodgson 2007-03-02 04:55:56 UTC
On an iBase MB890 mobo with 855GME graphics and the latest git modesetting branch, everytime an X client application quits, the screen gets reinitialised.  Every time this happens, the hardware accelerated cursor gets progressively corrupt (whilst looking initially fine when the xserver first starts).

In practice, I830ScreenInit() seems to be called every time a client quits, causing an explosion of:

(WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)
(II) No APM support in BIOS or kernel
(II) intel(0): Kernel reported 104704 total, 1 used
(II) intel(0): I830CheckAvailableMemory: 418812 kB available
(**) intel(0): VideoRam: 131072 KB
(II) intel(0): Attempting memory allocation with tiled buffers and
                large DRI memory manager reservation:
(II) intel(0): Allocating 3768 scanlines for pixmap cache
(II) intel(0): Success.
(II) intel(0): Memory allocation layout:
...

in the log.  The monitor loses sync as its CRTCs are reprogrammed.  Errors concerning 'p1 out of range', swapinterval and blanking also appear during the reinitialisation:

(WW) intel(0): p1 out of range
...
(EE) DoSwapInterval: cx = 0x83692a0, GLX screen = 0x825aed0
...
(EE) intel(0): I830 Vblank Pipe Setup Failed 0.

See also http://lists.freedesktop.org/archives/xorg/2007-March/022229.html.

Attached is an Xorg.0.log showing two such reinitialisations (once after plain x11 activity, another after GLX), and the associated xorg.conf.  This is using xserver, mesa, dri and drm from git.
Comment 1 Matthew Hodgson 2007-03-02 04:56:57 UTC
Created attachment 8949 [details]
Xorg log showing screen reinitialisation at client exit
Comment 2 Matthew Hodgson 2007-03-02 04:57:41 UTC
Created attachment 8950 [details]
xorg.conf used to generate the attached log
Comment 3 Eric Anholt 2007-03-07 13:03:59 UTC
Fixed the cursor corruption on server regen.  The server reinitializing on the exit of the last X client is normal behavior.

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.