Bug 33295

Summary: Screen corruption on boot
Product: xorg Reporter: roberth <sarvatt>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED NOTOURBUG QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: sarvatt
Version: unspecified   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
vbios
none
Xorg.0.log
none
syslog
none
lspci none

Description roberth 2011-01-20 07:54:14 UTC
Created attachment 42227 [details]
vbios

Forwarding this bug for launchpad bug reporter smagoun:

Platform: Thinkpad Edge 14 AMD
Operating System: Ubuntu 10.10
CPU: AMD Phenom(tm) II P840 Triple-Core Processor
GPU: ATI Mobility Radeon HD 5000 Series (1002:68e0)
Kernel: 2.6.35-24-generic-pae (2.6.35.8)
xf86-video-ati: 6.13.1
xorg-server: 2:1.9.0-0ubuntu7

Summary:
Screen corruption (static/checkerboard) when starting X.

To reproduce:
Boot into the freshly-installed Ubuntu 10.10 OS. Notice the screen corruption for about 3sec between plymouth and the OOBE. This is 100% reproducible on this particular machine.

This isn't limited to the first boot, it happens on subsequent boots. It also happens when switching from the OOBE to GDM/the desktop during login after first boot.

I can't reproduce this if I disable the radeon driver, e.g. by passing the 'radeon.foo=1' kernel parameter

Video of the corruption:
http://sarvatt.com/downloads/IMG_0296.MOV
Comment 1 roberth 2011-01-20 07:54:46 UTC
Created attachment 42228 [details]
Xorg.0.log
Comment 2 roberth 2011-01-20 07:55:05 UTC
Created attachment 42229 [details]
syslog
Comment 3 roberth 2011-01-20 07:56:04 UTC
Created attachment 42230 [details]
lspci
Comment 4 roberth 2011-01-24 07:47:37 UTC
Disabling the copyfb functionality in xf86-video-ati doesn't help this problem out.
Comment 5 Alex Deucher 2011-01-24 07:52:18 UTC
The corruption is due to uninitialized framebuffer content when scanout starts.  The initial buffer allocted has not been initialized to any value so it looks like garbage until the desktop gets drawn.
Comment 6 Bryce Harrington 2011-01-24 10:43:28 UTC
Thanks Alex.  Is there a way we can force the framebuffer to get initialized before X starts up?  Like, make the kernel set the buffer to black?
Comment 7 Alex Deucher 2011-01-24 11:01:59 UTC
It should transition from plymouth or console to the desktop image;  not quite sure why it's not working for you.  I think some versions of the xserver had a bug where a resize would be triggered on X load which would allocate a new BO and switch to that rather than using the one initially allocated at startup (http://cgit.freedesktop.org/xorg/xserver/commit/?id=f7af00e9f0e0e1d854b0e882378c032518ab71ca I think).  You could memset or do an exa solid fill on the scanout buffer before setting the mode in the ddx as a workaround.
Comment 8 Jerome Glisse 2011-03-08 10:34:32 UTC
It's not our bug

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.