KDE, Qt, Plasma paint errors, SIGSEGV crashes

Bug #366300 reported by david wood
36
This bug affects 5 people
Affects Status Importance Assigned to Milestone
qt4-x11 (Ubuntu)
New
Undecided
Unassigned

Bug Description

Binary package hint: kdebase-workspace

Expected behavior:

The KDE desktop taskbar (plasma panel, workspace) should have a consistent, good appearance, and should function consistently from the time a user logs in until they log out. It should not draw incorrectly. It should not crash.

Actual, problematic behavior:

On login, everything seems fine. After a short but unpredictable period of time, either or both of the following will happen:

1: Desktop (Plasma?) begins to look weird and misbehave. Plasma panels and widgets will begin to draw incorrectly (see attached screenshot) and function incorrectly - clicks may or may not be picked up, and may or may not cause activity. Applications continue to function normally, Alt-Tab works, Alt-F2 works.

2: Plasma Workspace will crash (SIGSEGV). Often this will happen after the corruption described above. Sometimes it happens while plasma still is drawing OK. The crash handler produces output, see comments below for the best versions of this.

These problems can even occur without much preceding user activity. I definitely watched plasma crash on its own after idling for a few minutes (with firefox open), with no user input at all.

Following possible threads from the release notes, I disabled effects, and tried all valid values for Option "AccelMethod". The bug was perfectly consistent in all cases.

Version details:

Description: Ubuntu 9.04
Release: 9.04
kdebase-workspace:
  Installed: (none)
  Candidate: 4:4.2.2-0ubuntu2
  Version table:
     4:4.2.2-0ubuntu2 0
        500 http://us.archive.ubuntu.com jaunty/main Packages

(II) intel(0): Integrated Graphics Chipset: Intel(R) Mobile Intel® GM45 Express Chipset
(--) intel(0): Chipset: "Mobile Intel® GM45 Express Chipset"

This is a Jaunty upgrade from a clean install of Intrepid.

ProblemType: Bug
Architecture: amd64
DistroRelease: Ubuntu 9.04
ExecutablePath: /usr/bin/plasma
Package: kdebase-workspace-bin 4:4.2.2-0ubuntu2
ProcEnviron:
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
SourcePackage: kdebase-workspace
Uname: Linux 2.6.28-11-generic x86_64

Revision history for this message
david wood (david-wood) wrote :
Revision history for this message
david wood (david-wood) wrote :

I am also observing window decorations being painted wrong. Screenshot attached.

Some output from plasma below. Not sure if it's relevant, but this is copious - thousands and thousands of repetitions:

QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted

Revision history for this message
david wood (david-wood) wrote :

Have confirmed that downgrading to the 2.4 driver (per instructions here: https://wiki.ubuntu.com/ReinhardTartler/X/RevertingIntelDriverTo2.4) has no effect, positively or negatively, on the problem.

I have also confirmed that, once the display corruption begins, the entire Amarok window is often unusable, rather than just the border. Interesting.

I am doing some more testing, and trying to confirm that this problem is distinct and unrelated to graphics performance and/or stability issues widely reported against the intel driver. Truthfully it is much more serious, since the desktop is nearly unusable within minutes.

I wonder if this may be a problem in QT/KDE/Plasma, that manifests in a multiple monitor configuration. That is my normal config, and it was fine in 8.10 on this hardware, aside from occasional, highly benign plasma panel placement weirdness, and the need to configure it manually with xrandr.

Revision history for this message
david wood (david-wood) wrote :
Download full text (8.8 KiB)

Additional testing seems to support that these problems (graphical corruption, plasma crashes) occur with multiple monitors, and do not occur without them. I will update the description and systems affected by the bug.

Is it the case that Kubuntu 9.04 does not work with multiple monitors?

Another crash, this time w/ more debug symbols installed:

This backtrace appears to be of no use.
This is probably because your packages are built in a way which prevents creation of proper backtraces, or the stack frame was seriously corrupted in the crash.

[Thread debugging using libthread_db enabled]
[New Thread 0x7ff756507760 (LWP 4691)]
[New Thread 0x7ff72a93e950 (LWP 13234)]
[New Thread 0x7ff72b13f950 (LWP 13233)]
[New Thread 0x7ff733b99950 (LWP 12356)]
[New Thread 0x7ff73439a950 (LWP 4697)]
[New Thread 0x7ff734fb9950 (LWP 4695)]
[New Thread 0x7ff736424950 (LWP 4694)]
0x00007ff750db7d21 in nanosleep () from /lib/libc.so.6
Current language: auto; currently c
[Current thread is 0 (LWP 4691)]

Thread 7 (Thread 0x7ff736424950 (LWP 4694)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007ff751899939 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2 0x00007ff7550554cc in ?? () from /usr/lib/libQtNetwork.so.4
#3 0x00007ff751898952 in ?? () from /usr/lib/libQtCore.so.4
#4 0x00007ff74e1ed3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#5 0x00007ff750df5fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7ff734fb9950 (LWP 4695)):
#0 0x00007ff750dee742 in select () from /lib/libc.so.6
#1 0x00007ff75195ff06 in ?? () from /usr/lib/libQtCore.so.4
#2 0x00007ff751898952 in ?? () from /usr/lib/libQtCore.so.4
#3 0x00007ff74e1ed3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#4 0x00007ff750df5fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5 0x0000000000000000 in ?? ()
Current language: auto; currently asm

Thread 5 (Thread 0x7ff73439a950 (LWP 4697)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007ff751899939 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2 0x00007ff73796cd4e in RenderThread::run (this=0x13067f8) at /build/buildd/kdebase-workspace-4.2.2/plasma/wallpapers/image/renderthread.cpp:91
#3 0x00007ff751898952 in ?? () from /usr/lib/libQtCore.so.4
#4 0x00007ff74e1ed3ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#5 0x00007ff750df5fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()
Current language: auto; currently c

Thread 4 (Thread 0x7ff733b99950 (LWP 12356)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007ff751899939 in QWaitCondition::wait () from /usr/lib/libQtCore.so.4
#2 0x00007ff73796cd4e in RenderThread::run (this=0x12e4218) at /build/buildd/kdebase-workspace-4.2.2/plasma/wallpapers/image/renderthread.cpp:91
#3 0x00007ff751898952 in ?? () from /usr/lib/libQtCore.so.4
#4 0x00007ff74e1ed3ba in start_thread (arg=<value ...

Read more...

summary: - plasma paint errors, crashes with SIGSEGV
+ KDE, Qt, Plasma paint errors, SIGSEGV crashes when using multiple
+ monitors
david wood (david-wood)
affects: kdebase-workspace (Ubuntu) → qt4-x11 (Ubuntu)
Revision history for this message
nonexistent account (nonexistentaccount) wrote : Re: KDE, Qt, Plasma paint errors, SIGSEGV crashes when using multiple monitors

I'm having similar problems (Kubuntu 9.04 x86_64 kde4) on a laptop with quadro mobile fx 1600m display adapter.

After a random period of time stuff drawn by plasma gets corrupted, texts and backgrounds disappear. This happens regardless of desktop effects turned on or off. Happens with the closed and open nvidia drivers.

The bug seems to affect only stuff drawn by plasma (widgets, panels) and disappears after logging in again. Screenshot included.

Revision history for this message
david wood (david-wood) wrote :
Download full text (9.8 KiB)

I now have enough debugging symbols on my machine to have a more informative stacktrace from a plasma crash characteristic of this bug. In this case, the display had been drawing badly for some time as characterized by the already included screenshots. Then this crash happened:

Application: Plasma Workspace (plasma), signal SIGSEGV
0x00007f83e965ad21 in nanosleep () from /lib/libc.so.6
Current language: auto; currently c
[Current thread is 0 (LWP 4698)]

Thread 5 (Thread 0x7f83cecc7950 (LWP 4701)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007f83ea13c939 in QWaitCondition::wait (this=0x29a6d80, mutex=0x29a6d78, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2 0x00007f83ed8f84cc in QHostInfoAgent::run (this=0x29a6d60) at kernel/qhostinfo.cpp:260
#3 0x00007f83ea13b952 in QThreadPrivate::start (arg=0x29a6d60) at thread/qthread_unix.cpp:189
#4 0x00007f83e6a903ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#5 0x00007f83e9698fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f83cd85c950 (LWP 4702)):
#0 0x00007f83e9691742 in select () from /lib/libc.so.6
#1 0x00007f83ea202f06 in QProcessManager::run (this=0x2257720) at io/qprocess_unix.cpp:305
#2 0x00007f83ea13b952 in QThreadPrivate::start (arg=0x2257720) at thread/qthread_unix.cpp:189
#3 0x00007f83e6a903ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#4 0x00007f83e9698fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5 0x0000000000000000 in ?? ()
Current language: auto; currently asm

Thread 3 (Thread 0x7f83ccc3d950 (LWP 4704)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007f83ea13c939 in QWaitCondition::wait (this=0x26c65e0, mutex=0x26c65d8, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2 0x00007f83d020fd4e in RenderThread::run (this=0x26c65c8) at /build/buildd/kdebase-workspace-4.2.2/plasma/wallpapers/image/renderthread.cpp:91
#3 0x00007f83ea13b952 in QThreadPrivate::start (arg=0x26c65c8) at thread/qthread_unix.cpp:189
#4 0x00007f83e6a903ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#5 0x00007f83e9698fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ?? ()
Current language: auto; currently c

Thread 2 (Thread 0x7f83de3c2950 (LWP 4918)):
#0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:261
#1 0x00007f83ea13c939 in QWaitCondition::wait (this=0x265a350, mutex=0x265a348, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:87
#2 0x00007f83d020fd4e in RenderThread::run (this=0x265a338) at /build/buildd/kdebase-workspace-4.2.2/plasma/wallpapers/image/renderthread.cpp:91
#3 0x00007f83ea13b952 in QThreadPrivate::start (arg=0x265a338) at thread/qthread_unix.cpp:189
#4 0x00007f83e6a903ba in start_thread (arg=<value optimized out>) at pthread_create.c:297
#5 0x00007f83e9698fcd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#6 0x0000000000000000 in ...

Revision history for this message
Tris_r (trisroger) wrote :

Same redraw issue occurs on my system (Kubuntu 9.04 amd64 kde4), though I haven't experienced a crash. Sounds the same except I using a single monitor set up.

When starting plasma from shell I'm getting 100's of the same error once the errors show up.

QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
QPainter::begin: Paint device returned engine == 0, type: 3
QPainter::setCompositionMode: Painter not active
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted

Not sure what other information will assist. Please let me know.

Revision history for this message
Hervé Le Roy (hleroy) wrote :

I confirm the same issue as reported by Tris_r above.

Kubuntu 9.04, Amd64, Ati Radeon Hd and single monitor.

Screenshot: http://bayimg.com/PapCFAAbL

david wood (david-wood)
description: updated
summary: - KDE, Qt, Plasma paint errors, SIGSEGV crashes when using multiple
- monitors
+ KDE, Qt, Plasma paint errors, SIGSEGV crashes
Revision history for this message
david wood (david-wood) wrote :

It seems clear from seeing that screenshot that this is the same issue I am having. I have removed the "multiple monitors" qualification from the bug description.

If anyone has any ideas for additional testing or follow up to help flesh this issue out, I am at their disposal.

For me, on a Lenovo X200, (and I gather at least for some others) Kubuntu Jaunty is completely broken and unusable. I have been forced to switch to Gnome, which has none of these problems...

Revision history for this message
david wood (david-wood) wrote :

I should also add, this is a big regression from Intrepid, which worked fine on the same hardware...

Revision history for this message
Hervé Le Roy (hleroy) wrote :

Intrepid + Kde 4.2 from ppa worked fine on my hardware too. It *may* be specific to Jaunty. I'm surprised we are only a few people to report it although it happens systematically on my system as long as the session stayed open 3-6 hours. I have seen reports from people with various hardware configs (ATI and Nvidia graphic cards, laptop and desktop). Same as obsidian : let us know what we can do to help you narrow down the issue.

Revision history for this message
snow13 (natelenart) wrote :

I am having the exact same problems as others in this post. I originally performed a clean installation of Intrepid with no problems whatsoever. After hearing about all the cool new features of Jaunty, I upgraded, whereupon I have been plagued with plasma problems. At first, it crashed a lot, but then it stopped crashing. Now it just does these weird painting errors that don't detect events properly. Interestingly enough, PlayWolf continues updating correctly (aside from some painting issues) even after everything else dies. The only thing that works at this point is either logging out and back in, or issuing "kquitapp plasma" followed by "plasma&", which will then work for somewhere around a day, give or take. One thing I should add is that I am _not_ using multiple monitors _nor_ am I using amd64.

Specs: Core 2 Duo E7300, ATI HD4670, 4GB ram, and a 23" monitor (1920x1200 resolution seems to consistently work fine).

I'm so disgusted with these plasma crashes I'm getting ready to roll back to Intrepid as it was much, much more stable. Anybody know if a clean install fixes these problems? Oh, and I tried erasing my plasma files and starting over, but that didn't help either.

Revision history for this message
snow13 (natelenart) wrote :

Also, I forgot to mention:

When I run "plasma&" I get about 15 copies of this:

Unrecognized character: /
Unrecognized character: /
ERROR: syntax error

When the plasma stops responding, I get the same painter errors as noted above by Tris_r.

When I kill plasma by running "kquitapp plasma", I get about 30 copies of this:

X Error: RenderBadPicture (invalid Picture parameter) 163
  Extension: 154 (RENDER)
  Minor opcode: 7 (RenderFreePicture)
  Resource id: 0x16631ec
X Error: BadPixmap (invalid Pixmap parameter) 4
  Major opcode: 54 (X_FreePixmap)
  Resource id: 0x16631ea

Not sure if any of this is helpful..?

Revision history for this message
Nunquam Secutus (bhjohnson17) wrote :

This is not just an issue with jaunty. I have a single monitor setup running 9.04 and am using the nvidia 180 graphics drivers. I had desktop effects on. I also noticed no correlation as to when this would start happening. I only had it completely crash 1 time in which case it restarted and was working fine but could not produce a backtrace. Every time I logged into ubuntu I had the display error happen (unless I was only logged in for a really short period of time). In an effort to have a reliable desktop again I decided to give sabayon 4.1 a try. The issue continues to happen in sabayon though less frequently than in kubuntu 9.04 (at least so far). This should indicate that it is simply an issue with plasma or that the issue is tied into a package that is in both of these distros.

Revision history for this message
snow13 (natelenart) wrote :

I went ahead and re-installed Jaunty from scratch and the painting issue has disappeared. I have had the reinstalled version for about 5 days now with no problems regarding plasma. Noting that my system had been spewing out "syntax errors" before and does not anymore, I might venture to guess that some configuration file is now parsed differently by the newer version of plasma and my old configs were causing errors, though I certainly am no expert.

Revision history for this message
Donn Ingle (donn-ingle) wrote :

KDE 4.2.3 - from ppa package - Kubuntu Jaunty 64 AMD
Nvidia card : nvidia-glx-180
Desktop effects on and off.
One monitor.

When popups from the panel open, the attached image sometimes happens.

This kind of 'dead paint' problem also happens often in scroll-bar areas and between the border and inner-window of forms too.

Revision history for this message
vincefn (vincent-favre-nicolin) wrote :

I can confirm that bug - I'm using:

Jaunty (up-to--date)
2.6.28-12-generic #43-Ubuntu SMP Fri May 1 19:31:32 UTC 2009 x86_64 GNU/Linux
nvidia-180

I also have two monitor on a single card (I have another nvidia card just for number crunching).

The strangest thing is that this slow disappearing of widgets has only begun to appear realtively recently for me - say in the last 3 weeks, and I'd been using Jaunty since alpha6 for more > 1 month without problems ??

Revision history for this message
Donn Ingle (donn-ingle) wrote :

I have some more images of what I call "plasma holes".

The holes are mainly the result of popup boxes - often it's the ones in Konqueror that appear when you pause over a file. The other holes are caused by popups over the task bar and the system tray.

\d

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

The tooltip troubles are bug 325074.

Revision history for this message
david wood (david-wood) wrote :

The drawing problems illustrated in the screenshot, and the description of the symptoms, at 325074 do not look the same as what's reported here.

Revision history for this message
Donn Ingle (donn-ingle) wrote :

If the problem is Xorg related, as bug 325074 implies, is there any work-around right now? I am getting these "plasma holes" all the time and it's driving me crazy.

"Makes no difference to plasma holes" table:
(nvidia driver in xorg.conf)
GL effects ON/OFF
XRender effects ON/OFF
(nv driver in xorg.conf (no GL at all))
kWin as manager
Openbox as manager

Revision history for this message
david wood (david-wood) wrote :

As I said, this is a different issue from 325074. In addition, it's not likely to be xorg, since switching to Gnome fixed everything. I haven't yet tested snow13's fix - it could be that simple.

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

Basically there was a massive memory leak in Qt that caused the video driver to run out of room for pixmaps, so it just stopped drawing stuff.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.