Bug 24771

Summary: Scrolling causes screen corruption
Product: xorg Reporter: Oliver Hoffmann <oliverhoffmann32>
Component: Driver/radeonhdAssignee: Luc Verhaegen <lverhaegen>
Status: RESOLVED WONTFIX QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: desintegr, mradcliffe, oldium.pro, oliverhoffmann32, orzel, seppo.yli-olli, tomas.linhart, victor.noel, zecmerquise
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Image taken from firefox after scolling up and down a few times
none
Xorg log
none
my current xorg configuration
none
Xorg log
none
/var/log/messages with boot parameter drm.debug=1
none
Example of the corruption in Firefox that I experience
none
My Xorg.log with 1.7.7 version of the server. none

Description Oliver Hoffmann 2009-10-28 03:36:19 UTC
Created attachment 30767 [details]
Image taken from firefox after scolling up and down a few times

Scrolling up or down inside a table/list of a window (Firefox or Konsole, for example) sometimes causes screen corruption in the redrawn area of the window.

This happens with radeonhd driver on an HD4850 but not with the nvidia driver on another system with exactly the same distribution / software configuration.
Comment 1 Oliver Hoffmann 2009-10-28 03:38:05 UTC
Created attachment 30768 [details]
Xorg log
Comment 2 Oliver Hoffmann 2009-10-28 03:40:15 UTC
Created attachment 30769 [details]
my current xorg configuration
Comment 3 Oliver Hoffmann 2009-10-28 03:44:13 UTC
Forgot to mention that I'm using drm, mesa and the radeonhd driver from today's git according to "http://www.x.org/wiki/radeonhd%3Aexperimental_3D" and that my kernel is "Linux DarkNRG 2.6.31-gentoo-r4 #1 SMP Tue Oct 27 12:26:50 CET 2009 i686 AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ AuthenticAMD GNU/Linux"
Comment 4 semkath 2009-11-01 02:46:05 UTC
I've got the same problem, radeonhd driver 1.3.0, kernel 2.6.31-gentoo-r4 #1 SMP Tue Oct 27 19:50:42 CET 2009 x86_64 Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz GenuineIntel GNU/Linux. I also get a lot of these, they seem related. This problem arose after updating to xorg-server-1.7.1 (previous was 1.6.5).

$ dmesg | tail
[ 1000.602569] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 25
[ 1001.643057] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 23
[ 1004.577911] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 21
[ 1011.536560] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 6
[ 1105.286021] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 16
[ 1160.652600] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 8
[ 1220.202990] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 12
[ 1241.875248] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 31
[ 1266.632267] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 22
[ 1333.559987] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 23

This looks similar to https://bugs.freedesktop.org/show_bug.cgi?id=24300
Comment 5 semkath 2009-11-01 02:57:44 UTC
Created attachment 30877 [details]
Xorg log
Comment 6 semkath 2009-11-01 02:58:57 UTC
Whoops, forgot to mention my chipset: RV670 (RadeonHD 3850). I also attached my Xorg.0.log.
Comment 7 Oldrich Jedlicka 2009-11-02 09:08:04 UTC
Hi, I have the same problem with ATI Mobility Radeon HD 3470. I've just upgraded from xorg-server 1.6.5 to 1.7.1, libs libdrm 2.4.15, xf86-video-radeonhd 1.3.0, mesa 7.6, vanilla kernel 2.6.32-rc5 (Gentoo).

I've tried running old kernel (2.6.31), but without success. Also changing to XAA didn't change anything.

Do you need logs/configuration from my system?
Comment 8 Oldrich Jedlicka 2009-11-02 09:13:11 UTC
(In reply to comment #4)
> $ dmesg | tail
> [ 1000.602569] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 25
> [ 1001.643057] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 23
> [ 1004.577911] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 21
> [ 1011.536560] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 6
> [ 1105.286021] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 16
> [ 1160.652600] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 8
> [ 1220.202990] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 12
> [ 1241.875248] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 31
> [ 1266.632267] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 22
> [ 1333.559987] [drm:radeon_cp_indirect] *ERROR* sending pending buffer 23
> 

I have the same errors in the logs and it directly relates to the screen corruption. Whenever I encounter screen problem, there is one more line in logs.
Comment 9 Oldrich Jedlicka 2009-11-04 11:45:45 UTC
Created attachment 30964 [details]
/var/log/messages with boot parameter drm.debug=1

In the attached file you can see the *ERROR* message also with some debugging (kernel 2.6.32-rc6).
Comment 10 mradcliffe 2009-11-12 17:12:15 UTC
Reporting similar results after building xserver 1.7.1 and libs/proto/utils from the official tarballs. And radeonhd 1.3.0 from git. Mesa git master.

I am not using r600_dri.so yet and kernel 2.6.28.2 with libdrm 1.3.0 and drm radeon 1.29.0 from master branch.

[  565.098157] [drm] Loading RV630 CP Microcode
[  565.098321] [drm] Loading RV630 PFP Microcode

I switched back to my old git build with the same version of libdrm and drm radeon with no issues.

xserver 1.6.99.1 from 2009.02.02 (man that's old...)
radeonhd 1.2.5

I'll try to build 1.2.5 into my 1.7.1 server next.
Comment 11 Matthias Hopf 2009-11-13 05:25:08 UTC
(In reply to comment #10)
> I'll try to build 1.2.5 into my 1.7.1 server next.

1.2.5 didn't use EXA by default, so this probably didn't surface before.
Comment 12 Matthias Hopf 2009-11-13 05:25:49 UTC
Can you please test whether this also happens with the radeon driver?
Comment 13 Victor NOEL 2009-11-13 08:49:42 UTC
(In reply to comment #12)
> Can you please test whether this also happens with the radeon driver?
> 

Hello,

Here I am running mesa 7.6, xorg-server 1.7.1.901, libdrm 2.4.15, kernel 2.6.31.6 all from Archlinux "stable" and the latest git of xf86-video-ati.

I have the errors in my dmesg:
[drm:radeon_cp_indirect] *ERROR* sending pending buffer 9
[drm:radeon_cp_indirect] *ERROR* sending pending buffer 26
[drm:radeon_cp_indirect] *ERROR* sending pending buffer 22
[drm:radeon_cp_indirect] *ERROR* sending pending buffer 2
[drm:radeon_cp_indirect] *ERROR* sending pending buffer 24
...

and the screen corruption in Firefox and OpenOffice (at least).
Comment 14 Victor NOEL 2009-11-13 08:52:05 UTC
I forgot to say that my xorg.conf contains this:
Section "Device"
        Identifier "video"
        Option  "AccelMethod" "EXA"
        Option  "ColorTiling" "on"
        Option  "Monitor-LVDS" "monitor"
        Option  "Monitor-VGA-0" "monitorext"
EndSection

Section "Monitor"
        Identifier "monitor"
EndSection

Section "Monitor"
        Identifier "monitorext"
        Option "RightOf" "monitor"
EndSection

Section "Screen"
        Identifier "screen"
        Monitor "monitor"
        Device "video"
        SubSection "Display"
                Depth 24
                Virtual 2720 1024
        EndSubSection
EndSection

That my videocard is a Radeon HD 3400 Series and that I am using two monitor together.
Comment 15 Oldrich Jedlicka 2009-11-14 10:40:32 UTC
(In reply to comment #12)
> Can you please test whether this also happens with the radeon driver?

I tried the radeon driver (git master), there are no problems (the log is clean, screen too), but I cannot try it with the dual monitor setup, which I'm normally using (the radeon driver doesn't detect the second monitor correctly - bug #21767). It looks like this is a problem of radeonhd only.
Comment 16 Victor NOEL 2009-11-14 11:27:53 UTC
(In reply to comment #15)
> (In reply to comment #12)
> > Can you please test whether this also happens with the radeon driver?
> 
> I tried the radeon driver (git master), there are no problems (the log is
> clean, screen too), but I cannot try it with the dual monitor setup, which I'm
> normally using (the radeon driver doesn't detect the second monitor correctly -
> bug #21767). It looks like this is a problem of radeonhd only.
> 

I wouldn't want to contradict you, but I just replied that the bug was present also with radeon :)

Maybe this is linked to dual monitor?! (and here I have no problems to detect the second monitor, you may need to check if it is not using different names for the output between radeon and radeonhd).
Comment 17 Oldrich Jedlicka 2009-11-14 12:34:05 UTC
(In reply to comment #16)
> I wouldn't want to contradict you, but I just replied that the bug was present
> also with radeon :)

Ah, sorry :-)

> Maybe this is linked to dual monitor?! (and here I have no problems to detect
> the second monitor, you may need to check if it is not using different names
> for the output between radeon and radeonhd).

Maybe it is related, but currently I cannot verify it, xrandr cannot enable LVDS with radeon driver (no crtc found)... But that is another story.
Comment 18 semkath 2009-11-15 07:41:40 UTC
(In reply to comment #12)
> Can you please test whether this also happens with the radeon driver?
> 

Yes, it does. Using xorg-server 1.7.1 and xf86-video-ati 6.12.4.
I'm also running a dual screen configuration.
Comment 19 Oldrich Jedlicka 2009-11-15 09:54:57 UTC
I've just restarted X with second screen disconnected and I still have the scrolling problems, so it is not related to dual screen config.
Comment 20 Victor NOEL 2009-11-16 02:16:05 UTC
Hello,

I am not totally sure, but it looks like the corruption is not appearing anymore.

It is either connected to the fact that I upgraded the kernel to 2.6.31.6 (I didn't reboot after its installation when I posted my first report here, so I was still using 2.6.31.5) or an upgrade of the radeon driver from git…
Comment 21 Victor NOEL 2009-11-16 10:29:32 UTC
(In reply to comment #20)
> Hello,
> 
> I am not totally sure, but it looks like the corruption is not appearing
> anymore.
> 
> It is either connected to the fact that I upgraded the kernel to 2.6.31.6 (I
> didn't reboot after its installation when I posted my first report here, so I
> was still using 2.6.31.5) or an upgrade of the radeon driver from git…
> 

Sorry for the noise, it thought it disappeared on one of my computer but the other just showed me the contrary... They both use ATI in dual screen with KDE4, the exact same version of the other libs and kernel, and are both x86_64.

I will check tomorrow if it really disappeared on the first.
Comment 22 Oldrich Jedlicka 2009-11-17 02:03:33 UTC
(In reply to comment #21)
> I will check tomorrow if it really disappeared on the first.

I'm currently playing with xf86-video-ati git master for bug #21767 (the screen is still on DVI-0 only, not on LVDS), but I haven't seen any screen corruption so far. 

Just to note - whenever I try the radeonhd and radeon drivers, I reboot the computer to have the clean testing environment.
Comment 23 Victor NOEL 2009-11-17 02:23:07 UTC
(In reply to comment #22)
> (In reply to comment #21)
> > I will check tomorrow if it really disappeared on the first.
> 
> I'm currently playing with xf86-video-ati git master for bug #21767 (the screen
> is still on DVI-0 only, not on LVDS), but I haven't seen any screen corruption
> so far.

The explanation of why it disappeared on one of my computer is simple: for an unknown reason drm fails to initialize, so there is no corruption!
Comment 24 Victor NOEL 2009-11-17 02:29:26 UTC
Is it linked to #24300 ?
Comment 25 Oldrich Jedlicka 2009-11-17 05:26:13 UTC
(In reply to comment #24)
> Is it linked to #24300 ?

I think the bug #24300 is about the same screen corruption, but for radeon driver.
Comment 26 Oldrich Jedlicka 2009-11-17 11:23:49 UTC
I finally have dual screen working and with git master of xf86-video-ati (configured with "--enable-dri --enable-kms --enable-shave", but kernel 2.6.32-rc7 without KMS enabled) I have no screen corruption, DRM looks initialized correctly.
Comment 27 Oldrich Jedlicka 2009-11-21 11:38:48 UTC
(In reply to comment #26)
> I finally have dual screen working and with git master of xf86-video-ati
> (configured with "--enable-dri --enable-kms --enable-shave", but kernel
> 2.6.32-rc7 without KMS enabled) I have no screen corruption, DRM looks
> initialized correctly.

After several days of working with radeon driver, I got the first "*ERROR* sending pending buffer". This means there might be a problem, but much less frequent (at least on my system).
Comment 28 Alex Deucher 2009-11-23 07:50:42 UTC
This looks to be related to xserver exa changes in xserver 1.7.x.  We are probably ending up with a missing *Done() call in the exa code which results in the command buffer not getting sent when it's supposed to.  I would suggest bisecting the xserver.
Comment 29 Oldrich Jedlicka 2009-11-25 12:01:15 UTC
Try the patch from bug #24300, it works for me currently.
Comment 30 Mikko C. 2009-11-26 11:23:28 UTC
(In reply to comment #29)
> Try the patch from bug #24300, it works for me currently.
> 

He's right: https://bugs.freedesktop.org/attachment.cgi?id=31477 fixes the corruption here.
Comment 31 udo 2009-12-06 00:49:18 UTC
Updating to
xorg-x11-server-common-1.7.1-9.fc12.x86_64 
xorg-x11-server-Xorg-1.7.1-9.fc12.x86_64 
xorg-x11-server-devel-1.7.1-9.fc12.x86_64

made the worst of the corruption go away. now I only have some issues left when scrollin. this is git radeonhd.

https://bugzilla.redhat.com/show_bug.cgi?id=544527 for some reading.
Comment 32 Oldrich Jedlicka 2009-12-06 01:43:41 UTC
Just to note that there is a final fix from Michel Dänzer in bug #24300: http://bugs.freedesktop.org/attachment.cgi?id=31531

I will test it soon too (sooner or later :-)).
Comment 33 Oldrich Jedlicka 2009-12-09 23:53:08 UTC
(In reply to comment #32)
> Just to note that there is a final fix from Michel Dänzer in bug #24300:
> http://bugs.freedesktop.org/attachment.cgi?id=31531
> 
> I will test it soon too (sooner or later :-)).

Tested with radeonhd, works for me
Comment 34 Seppo Yli-Olli 2010-09-12 05:13:25 UTC
Bump. Two questions:
1) Is this bug still an issue? Seems to be ancient, filed against X server 1.7 and we're going at 1.9'ish. This question culminates to "what should be the fate of the bug".
2) Is the assignee still involved with the project? This question culminates to "is this bug an orphan".
Comment 35 Victor NOEL 2010-09-12 06:02:15 UTC
Hello, O(In reply to comment #34)
> Bump. Two questions:
> 1) Is this bug still an issue? Seems to be ancient, filed against X server 1.7
> and we're going at 1.9'ish. This question culminates to "what should be the
> fate of the bug".
> 2) Is the assignee still involved with the project? This question culminates to
> "is this bug an orphan".

Hello,

On my side I don't see it anymore, at least with KMS enabled...
Using kernel 2.6.35, xorg-server 1.8.1.902, mesa 7.8.2 and libdrm 2.4.21.
Comment 36 Seppo Yli-Olli 2010-09-12 07:11:45 UTC
(In reply to comment #35)
> On my side I don't see it anymore, at least with KMS enabled...
> Using kernel 2.6.35, xorg-server 1.8.1.902, mesa 7.8.2 and libdrm 2.4.21.
I thought xf86-video-radeonhd never got KMS support. Are you sure you were testing with it instead of xf86-video-ati? (this is was marked as a bug to radeonhd, not radeon) In fact, you shouldn't even be able to use radeonhd without starting the kernel with KMS disabled.
Comment 37 Thomas Capricelli 2010-09-12 12:08:31 UTC
Hi. I had this very problem (same messages, same kind of corruption), but using the xv86-video-ati driver. Some other people commented having the bug with the ati driver too.

Anyway, using recent git versions for libdrm, mesa, xorg-server and xf86-video-ati, i dont experience it anymore.
Comment 38 Andriy Gapon 2010-09-29 04:20:12 UTC
I still reproduce this issue very easily on FreeBSD (thus no KMS).

I use:
xf86-video-ati 6.13.2
xorg-server 1.7.7 (I also tried 1.8.2 and the issue was still there)
Mesa libraries 7.8.2
Comment 39 Andriy Gapon 2010-09-29 04:21:51 UTC
Created attachment 39045 [details]
Example of the corruption in Firefox that I experience
Comment 40 Andriy Gapon 2010-09-29 04:23:04 UTC
Created attachment 39046 [details]
My Xorg.log with 1.7.7 version of the server.
Comment 41 Andriy Gapon 2011-03-21 01:53:46 UTC
Now I think that my particular issue is actually Bug 27627.
Comment 42 Jeremy Huddleston Sequoia 2011-10-16 16:00:38 UTC
Does this issue occur with the preferred ati driver (xf86-vide-ati)?  If so, please move this to the Driver/Radeon component.  

Development of radeonhd has pretty much halted and development focus is on the ati driver.  Please see http://www.x.org/wiki/radeonhd

If the issue does not exist in the ati driver (or if there is no response to this message), this bug will be closed as WONTFIX unless someone contributes a patch.
Comment 43 Jeremy Huddleston Sequoia 2011-11-07 15:22:08 UTC
Closing due to lack of response.  Please reopen and move to the Driver/Radeon 
component if this issue persists with xf86-video-ati

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.