Bug 41086 - Screen update problems when scrolling to the right in many (any?) java apps
Summary: Screen update problems when scrolling to the right in many (any?) java apps
Status: RESOLVED MOVED
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Xorg Project Team
QA Contact: Xorg Project Team
URL: http://www.tvbrowser.org
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-09-21 08:14 UTC by Harald Judt
Modified: 2018-12-13 22:25 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
Screenshot showing garbage area after scrolling to the right. (153.12 KB, image/png)
2011-09-21 08:14 UTC, Harald Judt
no flags Details
Xorg.0.log (57.19 KB, text/plain)
2011-10-05 07:07 UTC, Harald Judt
no flags Details
garbadge in gnome-terminal (126.49 KB, image/png)
2011-10-19 14:51 UTC, Matthias Bläsing
no flags Details
chromium and gnome-terminal corruption (1.46 MB, image/png)
2011-12-10 19:37 UTC, Andre Tomt
no flags Details

Description Harald Judt 2011-09-21 08:14:55 UTC
Created attachment 51459 [details]
Screenshot showing garbage area after scrolling to the right.

Example application for testing: TV Browser (see screenshot)

When scrolling to the right, the contents of the scrolled area become garbled. Moving the mouse pointer over elements in the garbled area apparently causes a redraw of that element, fixing the issue, but the other elements are not redrawn.

This does not occur when scrolling to the left. If the area is garbled and one scrolls to the left, everything is redrawn and appears correctly again.

This may be confined to java applications, and I only noticed this in tvbrowser (http://tvbrowser.org). Unfortunately I don't have any other java applications available to test.


Reproducible on the following hardware:
ATI Technologies Inc Mobility Radeon HD 3400 Series
ATI Technologies Inc Device 6719 (HD 6950 Cayman)
Comment 1 Michel Dänzer 2011-10-05 06:55:35 UTC
I can't seem to reproduce this on an RS880. Please attach the full Xorg.0.log file.
Comment 2 Harald Judt 2011-10-05 07:07:58 UTC
Created attachment 52006 [details]
Xorg.0.log

Here you are. For me, it's easily visible when dragging the horizontal scrollbar to the right.
Comment 3 Michel Dänzer 2011-10-05 07:23:07 UTC
What JRE/JDK are you using, and which rendering backend does it use? Did you make any changes in TV Browser's graphical settings? ...

Ideal would be some kind of simple test app or replayable trace which could be used to reproduce the problem independently from all such variables.
Comment 4 Harald Judt 2011-10-05 07:39:57 UTC
> What JRE/JDK are you using, and which rendering backend does it use?

I'm using sun-jdk-1.6.0.27 (amd64).

> Did you make any changes in TV Browser's graphical settings? ...

I've started with a clean profile and did not change any settings.

> Ideal would be some kind of simple test app or replayable trace which
> could be used to reproduce the problem independently from all such variables.

I'm sorry, but I can't provide this. This could of course be a bug in tvbrowser, as I don't have such issues with eclipse, but that may do the rendering in a completely different way after all. I've learned in the tvbrowser forum that the application has some display problems, though nothing that would compare to my issue here.

I will try to reproduce this with the nouveau driver *with the same config* and report back, just to be sure. Last time I tried the garbage problem did not occur though that was quite a while ago and may have been with an older version of tvbrowser. Unfortunately, it will take some time until I get to a machine using nvidia hardware.

Thanks for your help so far.
Comment 5 Matthias Bläsing 2011-10-19 14:51:59 UTC
Created attachment 52553 [details]
garbadge in gnome-terminal

This problem also shows in ubuntu after upgrading from natty+xorg-edgers to oneiric. (See attached screenshot)

Then it not only happens in tvbrowser (there also).

The corruptions appear randomly all over the screen. What can be done to further investigate - as it is now, I can not seriously work with the system.
Comment 6 Michel Dänzer 2011-10-20 07:18:43 UTC
(In reply to comment #5)
> This problem also shows in ubuntu after upgrading from natty+xorg-edgers to
> oneiric. (See attached screenshot)

Why do you think it's the same bug? It seems rather unlikely.

Please file your own bug with all the relevant information.
Comment 7 Matthias Bläsing 2011-10-20 11:43:49 UTC
>Why do you think it's the same bug? It seems rather unlikely.

Because the tvbrowser corruption happens since the upgrade and I saw the described other effect additionally - so the problems both started with the upgrade. But I'll stay away from this bug and just monitor it. Maybe your interested in the fact, that the terminal corruptions are gone after removing some remaining packages from the xorg-edgers PPA und that the tvbrowser corruptions are now still happening, but less often.
Comment 8 Harald Judt 2011-10-26 09:58:48 UTC
No garbage visible with nouveau driver and nVidia Corporation G70 [GeForce 7800 GS] (rev a2). Same versions of JDK and tvbrowser.

I changed the title to be a little more specific ;-)
Comment 9 Andre Tomt 2011-12-10 19:35:59 UTC
I'm seeing similar corruption with tvbrowser, however I cant make it 'stick'. It corrupts only during the scrolling, and as mentioned, only when scolling sideways to the right. I do however see similar corruption a lot in other apps, that sticks until redraw. And it seems related to text rendering, not especially to scrolling. I suspect its the same issue as the corruption looks quite similar.

I see it most often in the bookmarks bar of Chromium, there it shows up usually after 1-2 hovers with the mouse pointer. Just make sure the bar is visible, and add some bookmarks there (with label). Sometimes gnome-terminal also corrupts, and for example the torrent list in Transmission. When I focus the window, the corruption disapears (until it corrupts again), probably gets redrawn?

AFAICT it is independent of compositing; it happens in gnome's fallback mode also, and xfce4 w/ compositing disabled.

Attaching a screen shot that shows both chromium and gnome-terminal corrupting.

Using the same xorg stack I see it on AMD Radeon HD4780, HD5450, HD5770 and HD6670, but not on Intel HD2000 (Sandy Bridge). Verified with kernel 3.0.x, 3.1.x and 3.2-rc5. No xorg.conf, no weird radeon module options.

The stack looks like this, its basicly pure builds from git, with xorg core from the 1.11 branch (xorg-edgers PPA on Ubuntu 11.10):
libdrm-dev                       2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libdrm-intel1                    2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libdrm-nouveau1a                 2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libdrm-radeon1                   2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libdrm2                          2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libegl1-mesa                     7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libegl1-mesa-dev                 7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libegl1-mesa-drivers             7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libgbm1                          7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libgl1-mesa-dev                  7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libgl1-mesa-dri                  7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libgl1-mesa-glx                  7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libglapi-mesa                    7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libglu1-mesa                     7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
libkms1                          2.4.28+git20111207.dd9a5b4f-0ubuntu0sarvatt~oneiric
libopenvg1-mesa                  7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
mesa-common-dev                  7.12.0~git20111209.eefff370-0ubuntu0sarvatt~oneiric
xserver-common                   2:1.11.2.902+git20111209+server-1.11-branch.0ca8869e-0ubuntu0sarvatt~oneiric
xserver-xorg-core                2:1.11.2.902+git20111209+server-1.11-branch.0ca8869e-0ubuntu0sarvatt~oneiric
xserver-xorg-input-evdev         1:2.6.99+git20111201.a9cdb659-0ubuntu0sarvatt~oneiric
xserver-xorg-input-mouse         1:1.7.1+git20111207.8bc8502c-0ubuntu0sarvatt~oneiric
xserver-xorg-input-vmmouse       1:12.7.0+git20111109.fd140bfb-0ubuntu0sarvatt2~oneiric
xserver-xorg-video-ati           1:6.14.99+git20111207.bc54e415-0ubuntu0sarvatt~oneiric
xserver-xorg-video-cirrus        1:1.3.2+git20110912.e4f80ffd-0ubuntu0sarvatt
xserver-xorg-video-fbdev         1:0.4.2+git20111109.a8721393-0ubuntu0sarvatt~oneiric
xserver-xorg-video-intel         2:2.17.0+git20111209.429a36f7-0ubuntu0sarvatt~oneiric
xserver-xorg-video-mach64        6.9.0+git20111109.0de23432-0ubuntu0sarvatt~oneiric
xserver-xorg-video-mga           1:1.4.13.dsfg+git20110928.07792ef4-0ubuntu0sarvatt
xserver-xorg-video-neomagic      1:1.2.5+git20111109.f2a771c6-0ubuntu0sarvatt~oneiric
xserver-xorg-video-nouveau       1:0.0.16+git20111207.3d2a752c-0ubuntu0sarvatt~oneiric
xserver-xorg-video-openchrome    1:0.2.904+svn920-1ubuntu0sarvatt
xserver-xorg-video-r128          6.8.1+git20111109.67aaa469-0ubuntu0sarvatt~oneiric
xserver-xorg-video-radeon        1:6.14.99+git20111207.bc54e415-0ubuntu0sarvatt~oneiric
xserver-xorg-video-s3            1:0.6.3+git20111109.381ace93-0ubuntu0sarvatt~oneiric
xserver-xorg-video-savage        1:2.3.3+git20111109.8b9c81ba-0ubuntu0sarvatt~oneiric
xserver-xorg-video-siliconmotion 1:1.7.5+git20111118.7d9c1a49-0ubuntu0sarvatt~oneiric
xserver-xorg-video-sis           1:0.10.3+git20110913.94f23a56+really0.10.3-0ubuntu0sarvatt
xserver-xorg-video-sisusb        1:0.9.4+git20111109.02451944-0ubuntu0sarvatt~oneiric
xserver-xorg-video-tdfx          1:1.4.3+git20111118.4ea96c22-0ubuntu0sarvatt~oneiric
xserver-xorg-video-trident       1:1.3.4+git20111109.6afbfaf6-0ubuntu0sarvatt~oneiric
xserver-xorg-video-vesa          1:2.3.0+git20111109.4ba7306f-0ubuntu0sarvatt~oneiric
xserver-xorg-video-vmware        1:11.0.99.901+git20111123.abf9cb75-0ubuntu0sarvatt~oneiric

Will try to run some more tests tomorrow.. Maybe narrow it down to a particular component and start bisecting it.
Comment 10 Andre Tomt 2011-12-10 19:37:05 UTC
Created attachment 54311 [details]
chromium and gnome-terminal corruption
Comment 11 Andre Tomt 2011-12-10 19:43:05 UTC
(In reply to comment #9)
Ok, so that list wrapped badly. Lets remove redudant information and try again shall we ;-)

libdrm-dev                 2.4.28+git20111207.dd9a5b4f
libdrm-intel1              2.4.28+git20111207.dd9a5b4f
libdrm-nouveau1a           2.4.28+git20111207.dd9a5b4f
libdrm-radeon1             2.4.28+git20111207.dd9a5b4f
libdrm2                    2.4.28+git20111207.dd9a5b4f
libegl1-mesa               7.12.0~git20111209.eefff370
libegl1-mesa-dev           7.12.0~git20111209.eefff370
libegl1-mesa-drivers       7.12.0~git20111209.eefff370
libgbm1                    7.12.0~git20111209.eefff370
libgl1-mesa-dev            7.12.0~git20111209.eefff370
libgl1-mesa-dri            7.12.0~git20111209.eefff370
libgl1-mesa-glx            7.12.0~git20111209.eefff370
libglapi-mesa              7.12.0~git20111209.eefff370
libglu1-mesa               7.12.0~git20111209.eefff370
libkms1                    2.4.28+git20111207.dd9a5b4f
libopenvg1-mesa            7.12.0~git20111209.eefff370
mesa-common-dev            7.12.0~git20111209.eefff370
xserver-common             2:1.11.2.902+git20111209+server-1.11-branch.0ca8869e
xserver-xorg-core          2:1.11.2.902+git20111209+server-1.11-branch.0ca8869e
xserver-xorg-input-evdev   1:2.6.99+git20111201.a9cdb659
xserver-xorg-input-mouse   1:1.7.1+git20111207.8bc8502c
xserver-xorg-video-ati     1:6.14.99+git20111207.bc54e415
xserver-xorg-video-intel   2:2.17.0+git20111209.429a36f7
xserver-xorg-video-nouveau 1:0.0.16+git20111207.3d2a752c
xserver-xorg-video-radeon  1:6.14.99+git20111207.bc54e415
Comment 12 Andre Tomt 2011-12-11 12:39:16 UTC
A couple of new data points:

Option "NoAccel" "true" shows no corruption.
Reverting to an older known good radeon driver version, but on this newer xorg stack still shows corruption.

So I will now try to focus on xorg core. I'm starting to think this is an issue with EXA acceleration (which intel is not using, it seems). Setting XAA with KMS didnt work..
Comment 13 Andre Tomt 2011-12-11 12:53:37 UTC
Oh, Option "EXAPixmaps" "false" seems to fix/workaround most of the problems.

Still seeing some corruption while right-scrolling the tvbrowser app, but everything else seems clean.
Comment 14 Harald Judt 2011-12-15 12:05:10 UTC
Magic worked its way, and this has been fixed recently. I don't know which component it was, but I can exclude with certainty sun-jdk, tvbrowser, the kernel and most probably xf86-video-ati.

I think the other types of corruption reported here (chromium, gnome-terminal) are not related to my issue.
Comment 15 Jochen 2012-12-19 14:13:32 UTC
This bug is still unsolved for me. I'm having Nvidia graphics card (Macbook 5,1) and using Ubuntu 12.04 with proprietary Nvidia driver.
Comment 16 bugs.freedesktop.org.674292 2014-04-01 16:12:00 UTC
It is still there in Ubuntu 12.04 LTS (up-to-date). Here, too, is a pretty recent nvidia (GTX 660) at work with proprietary drivers (v304.116). All standard setup coming with the distro, but using the gome classic 2d desktop.

See also https://bugs.launchpad.net/ubuntu/+source/openjdk-6/+bug/1032936 and https://netbeans.org/bugzilla/show_bug.cgi?id=243407.

A workaround is -Dsun.java2d.opengl=true.

The problem is pretty easily reproducible by installing Netbeans und opening the file dialog (native or metal theme), going into a large folder like /usr/share and scrolling right. You see it immediately. You can barely browse ANYTHING AT ALL.

One hint: it is *NOT* appearing via "ssh otherUserNotRunningX@localhost -Y .../bin/netbeans", even when explcitily setting sun.java2d.opengl to false.
Comment 17 Michel Dänzer 2014-04-09 08:22:44 UTC
If the same problem happens with the nvidia driver as well as with open source drivers, the problem must be either in generic X code used in both cases, or in the Java code.
Comment 18 GitLab Migration User 2018-12-13 22:25:56 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/xorg/xserver/issues/417.


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.