Bug 247839 - Menus and Plasma popups not painted correctly with Intel drivers
Summary: Menus and Plasma popups not painted correctly with Intel drivers
Status: RESOLVED UPSTREAM
Alias: None
Product: kwin
Classification: Plasma
Component: compositing (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
: 256363 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-08-14 11:49 UTC by Rahul Jain
Modified: 2011-08-02 05:55 UTC (History)
9 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Showing the issue (25.10 KB, image/jpeg)
2010-08-26 22:07 UTC, Christoph Feck
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rahul Jain 2010-08-14 11:49:30 UTC
Version:           unspecified (using KDE 4.5.0) 
OS:                Linux

There is no need to even run KDE 4.5 in OpenGL mode for more than 5 minutes. Each time I try to enable a new desktop effect, the desktop freezes. Hitting <Ctrl> + <Shift> + <F12> (the shortcut for suspending compositing effects) works and my desktop is back to its responsiveness self. 

There are other random failures. Drop down menus won't work, Plasma Menus (like when I click on the Battery Monitor, or if I want to start the Application Launcher) won't work either. These failures are random, but a failure is more the norm than the normal behaviour. 

These problems were definitely not there in the 4.4.x series and are a new addition to the KDE 4.5 series.

Reproducible: Always
Comment 1 Martin Flöser 2010-08-14 11:53:13 UTC
Please try to disable the blur effect.
Comment 2 Christoph Feck 2010-08-14 12:09:11 UTC
The freezes are caused by intel KMS kernel drivers. Update to kernel 2.6.35, use a kernel which has these https://bugzilla.novell.com/show_bug.cgi?id=617530 patches backported, or disable Direct rendering in systemsettings. The difference was that KWin 4.4 was not able to enable direct rendering mode at all. And yes, without a broken kernel, direct rendering IS faster.

As for the often not working popups (menus, panel popups etc), when direct rendering is enabled, I am pretty sure it is a driver propblem, too. I am seeing them here, it is annoying, but I doubt that KWin is to blame. The whole Linux graphics driver stack is a major pain currently :(
Comment 3 Rahul Jain 2010-08-14 12:40:25 UTC
Blur is already disabled, I am going to upgrade to a 2.6.35 kernel and then test it again.

By the way, what Xorg Server version are you guys running. Do I need to update that too to 1.9 (currently at RC6)?
Comment 4 Rahul Jain 2010-08-14 22:46:50 UTC
Upgraded to 2.6.35. Didn't help - these menus still keep disappearing. So OpenGL is still useless as of now. And Xrender can't provide all the effects that I want. I am currently thinking of switching back to 4.4.5 - at least things will work there.
Comment 5 Thomas Lübking 2010-08-14 23:24:48 UTC
I suspect the menus disappear since oxygen now uses ARGB windows on them - try another style (rather NOT bespin with rounded mennus ;-)
Comment 6 Rahul Jain 2010-08-15 00:39:41 UTC
I am downgrading to 4.4.5 - all I want is a working system for a change. 

Rant follows (ignore please):

I have just become sick and tired of nothing working as expected. Each new release of every software breaks something, or introduces some features that don't work as advertised. Not only KDE, but every other software ever written. The OS stack is no better, sometimes sounds suck and the video stack always sucks.
Sometimes I wonder why I don't change the OS, but sadly, Linux has made me so used to the command line that I can not go back to Windows. 4 years of using Linux heavily, and I have come to rely on the software a lot so switching would be a nearly impossible. However, I now use Linux only because I have to, not because I want to.
Comment 7 Hugo Pereira Da Costa 2010-08-15 04:17:27 UTC
@thomas:  oxygen already used argb on the menus in kde4.4 (to get nice rounded 
corners instead of masked pixelated corners). It also uses this for detached 
toolbars and dockwidgets.
Comment 8 Martin Flöser 2010-08-15 09:13:14 UTC
while I completely understand that you are frustrated, I must say that things like this bug report are out of our bounds. We don't have the man power or financial support to test our software on each existing combination of hardware, linux kernel, distribution, X.org release and driver release. We have to be able to use an industry standard like OpenGL without it breaking on random systems.

As @2 explains it is completly a driver issue.
Comment 9 Rahul Jain 2010-08-15 18:45:49 UTC
I was frustrated yesterday, a combination of a lot of effects. I very well understand that it is not possible to test the software on the myriad of hardware configurations that exist out there. However, the problem is that I looked at the patches from the bugzilla report here: http://bugs.freedesktop.org/attachment.cgi?id=36464

I looked at my kernel source tree (I am using the zen kernel), and each and every one of these patches is present. And I am using the kernel with these patches - and I still have the problem with the menus and OpenGL rendering.

This is why I am now asking where can I now take this bug report?
Comment 10 Christoph Feck 2010-08-15 23:17:31 UTC
Martin, I only confirmed that the freezing was because of a kernel bug. The unmapped popups _could_ be a Kwin issue, because it seems timing related (same as we had Panel menus sometimes appearing above, sometimes below the panel).
Comment 11 Rahul Jain 2010-08-16 10:34:06 UTC
I recompiled X server, and all the installed x11-drivers/* packages. The zen-kernel that I am using includes the patches that are mentioned in the bug report (I checked every change made in the patches and that change is there in the relevant source files). OpenGL effects are again usable.

The problem that currently exists are these:

Desktop Freeze if I enable a new effect - I have to restart compositing using the keyboard shortcut. Desktop Freeze even if change the settings in the Oxygen Window Decoration and try to apply it. Could someone elaborate on this. Could also be possible that my method of checking whether the patches are included or not is incorrect.

Secondly, the problem with the menus still exists. It is random, sometimes it works, sometimes it doesn't.
Comment 12 Thomas Lübking 2010-08-16 14:33:42 UTC
> Desktop Freeze if I enable a new effect - I have to restart compositing using
> .... Could someone elaborate on this.

This (not randomly, but deterministic) is bug #241402, occurs on "qdbus org.kde.kwin /KWin reconfigure" while compositing is active.

(Since the OP may be misleading: did it occur randomly and "automatically" (after like 5 minutes) before or whenever you touched kwin related config settings? (in the latter case this one is a dupe))
Comment 13 Christoph Feck 2010-08-16 14:54:08 UTC
Thomas, this bug is about randomly popups (menus etc.) appearing unmapped, i.e. only the shadow for menus appears, and hovering over the menu items does not make the menu appear either. Since this bug is only visible when direct rendering is enabled, I cannot test with a different configuration to rule out a KWin bug.

In other words, this bug should stay open until we know for sure.
Comment 14 Thomas Lübking 2010-08-16 15:30:07 UTC
"... also ..." ;-P

hummm... on direct rendering HW/driver limitations (out of texture ram) would hit you visually... (there should also be a gl error, but i don't know whether kwin prints it)

I haven't seen that here (nvidia, oc direct rendering, argb popups) ever, also not on a "quick" test using "standard" effects (shadows, fade, scale), so it's likely no side-clipping issue (you could deactivate effects to rule that out)

Does it occur with "basic" styles (and non ARGB popups/docks) as well or can you raise odds to get it by spawning several konsole windows?

Once you can reproduce it, you should do sth. like 
   sleep 20; qdbus org.kde.kwin /KWin toggleCompositing
and cause it (since the stupid popups grab the pointer there's no other way to do this) to ensure the popup is not really added unmapped as a side effect of some other config (tabbing, tiling, whatever)
Comment 15 Christoph Feck 2010-08-16 16:12:30 UTC
I can rule out memory limitations, because it can happen also immediately after login into a freshly booted system.

I tried your "sleep" trick in a "while true" loop and it looks like the menu is mapped, just not rendered. When compositing gets disabled, the menu appears correctly. Input in this window work, too, so it is just the compositor not managing to allocate/render/copy the rendering for the menu.

The odd thing is that it never happens on regular windows, just popups. It looks like KWin does not wait for the application to "sync" rendering into the off screen buffer, but creates a texture from an empty pixmap.
Comment 16 Christoph Feck 2010-08-16 16:14:25 UTC
Ah, regarding style, you should already know which style and window decoration I use. And no, Skulpture does not have any ARGB hacks ;)
Comment 17 Thomas Lübking 2010-08-16 16:54:07 UTC
hmmm.. kristian and keith had some noise on xorg regarding missing flush calls on damages (and other places)
http://lists.freedesktop.org/archives/xorg/2010-August/050856.html
-> http://lists.freedesktop.org/archives/xorg/2010-August/050818.html
-> http://lists.freedesktop.org/archives/xorg/2010-August/050827.html

but since the texture should get "some" update on damages somewhen and it works on indirect rendering (and the render backend?!) this should not be it.

The whole thing however reminds me of the "black windows" issue that occured on nvidia drivers and (combobox) popups in the past - just that the intel driver would init the texture 32bit, ie transparent and not black...

also notice that nvidia pixmap cache is full when kde has started up (leading to horrible lags before flushing it, see bug #234463 )
Comment 18 Rahul Jain 2010-08-16 20:35:11 UTC
Looks like I have hit bug #241402 as well.

However, as Christoph pointed out I also do have a problem with the popup menus being transparent. Actually with the blur effect enabled, the popup menus are blurred transparent.

So, if there are any tests that you folks need me to still run, please do tell me.
Comment 19 Rahul Jain 2010-08-18 14:37:06 UTC
I changed the status of the bug to UNCONFIRMED - the problem with the drop down and pop up menus with compositing is still unsolved.
Comment 20 Martin Flöser 2010-08-26 21:08:44 UTC
(In reply to comment #19)
> I changed the status of the bug to UNCONFIRMED - the problem with the drop down
> and pop up menus with compositing is still unsolved.
Please report in future one report for each issue. I closed that bug as I did not notice it's about two issues. It's very difficult to track such bug reports.

Adjusted title and status accordingly. Btw a screenshot of the issue might be useful :-)
Comment 21 Rahul Jain 2010-08-26 22:03:07 UTC
(In reply to comment #20)
> (In reply to comment #19)
> > I changed the status of the bug to UNCONFIRMED - the problem with the drop down
> > and pop up menus with compositing is still unsolved.
> Please report in future one report for each issue. I closed that bug as I did
> not notice it's about two issues. It's very difficult to track such bug
> reports.

Thanks, I will keep this in mind in the future.

> 
> Adjusted title and status accordingly. Btw a screenshot of the issue might be
> useful :-)

I will attach a screenshot soon (do keep in mind though that the screenshot would only be useful with the blur feature enabled - since that would give me a blurred background. In case blur is turned off, the absence of popup menus would be visually uninformative).
Comment 22 Christoph Feck 2010-08-26 22:07:23 UTC
Created attachment 50987 [details]
Showing the issue

Note that this is NOT the same as the "shadows faster than windows" bug, i.e. this is not just a short snapshot, but the menu stays invisible. The window is actually mapped, input works.

As you see, the parent menu worked, but the sub menu not. The result is completely random.
Comment 23 Thomas Lübking 2010-08-26 22:09:26 UTC
(In reply to comment #21)
> I will attach a screenshot soon

have a look at the shots attached to bug #248839
Comment 24 Gábor Lehel 2010-08-29 12:18:36 UTC
I have the same problem here. The bug happens in KDE applications, doesn't happen in Opera 10.10 (which uses Qt3). Amarok's OSD also sometimes shows up without its contents (but with the correct background color), and the kmix OSD sometimes doesn't show up at all; I'm not sure if these are the same, related, or different bugs.

# uname -a
Linux lg 2.6.34.1 #4 SMP PREEMPT Tue Jul 13 08:59:48 CEST 2010 i686 GNU/Linux

# aptitude show xserver-xorg-video-intel
[...]
Version: 2:2.12.0+legacy1-1
[...]

# lshw
[...]
 *-display:0
             description: VGA compatible controller
             product: Mobile 945GM/GMS, 943/940GML Express Integrated Graphics Controller
[...]

Qt is 4.7 branch from git as of August 24 using the raster engine, kdelibs from svn as of August 25, kdebase from August 8 (haven't gotten around to updating it yet).
Comment 25 Gábor Lehel 2010-09-13 12:42:13 UTC
The problem is in the raster engine, or an interaction of something else involving it. I updated kdelibs and kdebase to 09/04, and Qt to 4.7 branch as of 09/03, and switched back to the default x11 engine, and the problems went away. If I start an application with --graphicssystem raster, they're back again.
Comment 26 Håvard Wall 2010-10-30 11:33:31 UTC
For me the problem is not the raster engine. I tried both with the raster engine and without. The problem is xorg-server. I downgraded from 1.9.1 to 1.8.2 and finally my problems went away. (phew, this has been really annoying!)
Comment 27 Christoph Feck 2010-11-08 15:04:40 UTC
*** Bug 256363 has been marked as a duplicate of this bug. ***
Comment 28 Łukasz Siudut 2010-11-08 19:05:21 UTC
Same thing started happening to me after upgrade KDE to 4.5.3 and Qt to 4.7.0. Although I have second graphics card (radeon) it's hard to use it every day due to broken power saving and random display problems.

But this is not what I wanted to proclaim. Just checked newest kernel, 2.6.37-rc1, and I have some bad news. After this upgrade even login widget from KDM doesn't show, nothing. It's no longer random - it's solid broken, KDE is completely unusable (didn't try to disable OpenGL).

For now I'm switching to fluxbox, I can't stand this problems and can't resolve it any way. Downgrading, upgrading, older version, git versions - nothing helps. I'll try to post bug on drm bug tracker or something, maybe they'll react and fix this annoying issue... KDE without compositing is not the same, it hurts when I know what I lose ;) ).
Comment 29 Thomas Lübking 2010-11-08 19:59:22 UTC
(In reply to comment #28)

kdm_greet doesn't run composited, nor does it link opengl.
no idea what's actually broken there, but 
a) it's probably not related to this actual bug (except for "driver/kms is broken")
b) afaics you shouldn't be able to run fluxbox either if kdm_greet doesn't start up for kms/dri reasons =\

tried to flag "nomodeset" as kernel parameter in grub?
for ati trouble consider reading here - most is not distro related
https://wiki.archlinux.org/index.php/ATI
Comment 30 Łukasz Siudut 2010-11-08 22:22:30 UTC
Aww, you're right, I didn't thought about it. I assumed there's some kind of compositing because of pseudo semi-transparent background of the login widget.

But still - on 2.6.36 the same login widget sometimes shows, sometimes not. In both cases I can see changing cursor after pointing to place where text box should be. After I blindly type password and hit enter to login - it hangs on kdm background but I can see disk activity while loading KDE.

About ATI I know what can i expect, sometimes I'm trying drm-radeon-testing from drm-2.6 git, what I meant was that driver is still in to early stage for my purpose (a lot of "mobile" work). But KDE works ok it properly, without any invisible surprises. Thanks for link though.
Comment 31 Igor Poboiko 2011-01-13 14:58:37 UTC
Suddenly, after regular update, this bug disappeared for me!
I use Gentoo with:
xf86-video-intel 2.14.0
mesa 7.10
KDE SC 4.5.95 (aka RC2)
Qt 4.7.1

Looks like it happened after upgrading xf86-video-intel. All popups and menus renders without any problems with compositing (and blur) enabled.
Comment 32 Martin Flöser 2011-01-13 17:30:33 UTC
(In reply to comment #31)
> Looks like it happened after upgrading xf86-video-intel. All popups and menus
> renders without any problems with compositing (and blur) enabled.
This makes it quite clear, that it was a driver bug. Thanks for adding the information
Comment 33 Robert Simmons 2011-05-22 20:19:12 UTC
I can confirm that the bug is fixed in Kubuntu 11.04 with KDE 4.6.3, Qt 4.7.2,
and xf86-video-intel 2.14.0.

This bug may be related to bug 255175 which I can confirm as also fixed on my system.
Comment 34 Christoph Feck 2011-08-01 16:10:46 UTC
Robert, which XOrg version? I am still/again seeing it (had run without compositing the last months).
Comment 35 Robert Simmons 2011-08-02 02:48:15 UTC
Unfortunately, I cannot confirm or deny that this is still happening to me.  My laptop's mainboard died (the one with the intel video chipset).  All other machines that I have are running ATI graphics cards which have never exhibited the problem.