Bug 318162

Summary: kwin crash after enabling desktop effects
Product: [Plasma] kwin Reporter: berner
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED DUPLICATE    
Severity: crash CC: yaroslavkishchenko
Priority: NOR    
Version: 4.10.2   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Xorg.0.log
kwin crash
New crash information added by DrKonqi
/var/log/X.log.0.log

Description berner 2013-04-10 21:08:04 UTC
Application: kwin (4.10.2)
KDE Platform Version: 4.10.2
Qt Version: 4.8.4
Operating System: Linux 3.8.0-17-generic x86_64
Distribution: Ubuntu Raring Ringtail (development branch)

-- Information about the crash:
- What I was doing when the application crashed:
In system setting and desktop effects I clicked on OpenGL detection and apply.
Boom, kwin crashed.
used fglrx driver which works nice without effects.
also tried radeon driver which works with effects, but extreamly heats up the GPU with and without desktop effects

The crash can be reproduced every time.

-- Backtrace:
Application: KWin (kwin), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#6  0x00007fcbfcbe374e in glXGetFBConfigs () from /usr/lib/fglrx/libGL.so.1
#7  0x00007fcc0104b2c8 in KWin::GlxBackend::initDrawableConfigs (this=this@entry=0x20fecc0) at ../../kwin/glxbackend.cpp:323
#8  0x00007fcc0104b90a in KWin::GlxBackend::init (this=0x20fecc0) at ../../kwin/glxbackend.cpp:88
#9  0x00007fcc010454e7 in KWin::SceneOpenGL::createScene () at ../../kwin/scene_opengl.cpp:224
#10 0x00007fcc01030205 in KWin::Compositor::slotCompositingOptionsInitialized (this=this@entry=0x1e30830) at ../../kwin/composite.cpp:206
#11 0x00007fcc01030633 in setup (this=0x1e30830) at ../../kwin/composite.cpp:171
#12 KWin::Compositor::setup (this=0x1e30830) at ../../kwin/composite.cpp:143
#13 0x00007fcc01030eef in KWin::Compositor::slotConfigChanged (this=0x1e30830) at ../../kwin/composite.cpp:371
#14 0x00007fcbfc1280ef in QMetaObject::activate (sender=0x1dd3fd0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3539
#15 0x00007fcc00fc619a in KWin::Workspace::slotReconfigure (this=0x1dd3fd0) at ../../kwin/workspace.cpp:1022
#16 0x00007fcc00fc6e2a in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=<optimized out>, _c=<optimized out>) at ./workspace.moc:318
#17 KWin::Workspace::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./workspace.moc:234
#18 0x00007fcbfc1280ef in QMetaObject::activate (sender=0x1dd42a0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3539
#19 0x00007fcbfc12d3ec in QObject::event (this=0x1dd42a0, e=<optimized out>) at kernel/qobject.cpp:1156
#20 0x00007fcbfb4b98ec in QApplicationPrivate::notify_helper (this=this@entry=0x1cc1490, receiver=receiver@entry=0x1dd42a0, e=e@entry=0x7fffb4ccf330) at kernel/qapplication.cpp:4567
#21 0x00007fcbfb4bc25b in QApplication::notify (this=0x7fffb4ccf970, receiver=0x1dd42a0, e=0x7fffb4ccf330) at kernel/qapplication.cpp:4428
#22 0x00007fcc0079aaf6 in KApplication::notify (this=0x7fffb4ccf970, receiver=0x1dd42a0, event=0x7fffb4ccf330) at ../../kdeui/kernel/kapplication.cpp:311
#23 0x00007fcbfc11363e in QCoreApplication::notifyInternal (this=0x7fffb4ccf970, receiver=0x1dd42a0, event=0x7fffb4ccf330) at kernel/qcoreapplication.cpp:946
#24 0x00007fcbfc144b72 in sendEvent (event=0x7fffb4ccf330, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#25 QTimerInfoList::activateTimers (this=0x1cc1fd8) at kernel/qeventdispatcher_unix.cpp:622
#26 0x00007fcbfc144bd0 in QEventDispatcherUNIX::activateTimers (this=this@entry=0x1c64ad0) at kernel/qeventdispatcher_unix.cpp:879
#27 0x00007fcbfc144d28 in QEventDispatcherUNIX::processEvents (this=0x1c64ad0, flags=...) at kernel/qeventdispatcher_unix.cpp:941
#28 0x00007fcbfb55fb9f in QEventDispatcherX11::processEvents (this=0x1c64ad0, flags=...) at kernel/qeventdispatcher_x11.cpp:152
#29 0x00007fcbfc11238f in QEventLoop::processEvents (this=this@entry=0x7fffb4ccf680, flags=...) at kernel/qeventloop.cpp:149
#30 0x00007fcbfc112618 in QEventLoop::exec (this=0x7fffb4ccf680, flags=...) at kernel/qeventloop.cpp:204
#31 0x00007fcbfc117cf6 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#32 0x00007fcc00fe602a in kdemain (argc=3, argv=0x7fffb4ccfab8) at ../../kwin/main.cpp:537
#33 0x00007fcc00bd7ea5 in __libc_start_main (main=0x4006d0 <main(int, char**)>, argc=3, ubp_av=0x7fffb4ccfab8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fffb4ccfaa8) at libc-start.c:260
#34 0x0000000000400701 in _start ()

This bug may be a duplicate of or related to bug 291433.

Possible duplicates by query: bug 317054, bug 316869, bug 314602.

Reported using DrKonqi
Comment 1 Thomas Lübking 2013-04-10 21:13:12 UTC
please see bug #314602 and bug #316869 - there's chance that you're not using fglrx but radeon on fglrx libs.
Comment 2 berner 2013-04-10 21:51:07 UTC
Don't think it'sfglrx vs radeon.
But maybe intel !
It's a Radeon HD6400M / Intel hybrid graphics notebook.
How can I find out more?
Comment 3 Thomas Lübking 2013-04-11 07:36:53 UTC
attach /var/log.Xorg.0.log and - if possible - the output of "glxinfo" (while i rather expect that to crash as well)
Comment 4 berner 2013-04-11 11:34:41 UTC
Created attachment 78795 [details]
Xorg.0.log

The last Xorg.0.log
Comment 5 berner 2013-04-11 11:37:02 UTC
Today it behaves different then the last 2 weeks. There also came updates.

Now it does not crash anymore when I click on the OpenGL detection button
but when I disable the checkbox to enable desktop effects at start.

fglrx is loaded but glxinfo shows an error.
  
# lsmod | grep fglrx
fglrx                5196509  0 
amd_iommu_v2           19068  1 fglrx

$ glxinfo
name of display: :0
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  153 (GLX)
  Minor opcode of failed request:  19 (X_GLXQueryServerString)
  Serial number of failed request:  12
  Current serial number in output stream:  12

OK, I'll disable fglrx and radeon-driver (blacklist module).

Use intel graphics and try to optimize energy consumption.

Seems like there is still work in progress with those drivers / hybrid graphics.
I'll wait some month and play with those drivers from time to time.

Thank you for your help!
Should I change Status to RESOLVED?
Comment 6 berner 2013-04-11 11:39:01 UTC
Created attachment 78796 [details]
kwin crash

Another crash file.
This time when I  deactivate desktop effects.
Comment 7 Thomas Lübking 2013-04-11 11:48:48 UTC
It's basically a dupe.
You're using the intel module, but accessing the fglrx GL library - what cannot work.

You'll  probably need sth. like bumblebee for fglrx or pick one GPU or use a second X11 server for fglrx (what includes some script to fix library paths and is near to what bumblebee does), yes.

*** This bug has been marked as a duplicate of bug 314602 ***
Comment 8 Ярослав 2013-04-27 08:08:03 UTC
Created attachment 79488 [details]
New crash information added by DrKonqi

kwin (4.10.2) on KDE Platform 4.10.2 using Qt 4.8.4

- What I was doing when the application crashed:
I changed to open gl from x render but it gave ma error then i tried again i got this crash

-- Backtrace (Reduced):
#7  0xb6427402 in glXGetFBConfigs () from /usr/lib/fglrx/libGL.so.1
#8  0xb772c389 in KWin::GlxBackend::initDrawableConfigs (this=this@entry=0x8841810) at ../../kwin/glxbackend.cpp:323
#9  0xb772cab6 in KWin::GlxBackend::init (this=0x8841810) at ../../kwin/glxbackend.cpp:88
#10 0xb7725a83 in KWin::SceneOpenGL::createScene () at ../../kwin/scene_opengl.cpp:224
#11 0xb770d6f5 in KWin::Compositor::slotCompositingOptionsInitialized (this=this@entry=0x85051b8) at ../../kwin/composite.cpp:206
Comment 9 Thomas Lübking 2013-04-27 08:13:25 UTC
See comments here and esp. on duplicate on what to check and do.
Your OpenGL/fglrx installation is broken - not even "glxinfo" will work.
Comment 10 Ярослав 2013-04-27 08:47:24 UTC
Well I do not have /var/log.Xorg.0.log  file may be because i already restarted my laptop
glxinfo worked as in previous comments

yaroslav@kubi-ubi-coding-machin:~$ glxinfo 
name of display: :0
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  153 (GLX)
  Minor opcode of failed request:  19 (X_GLXQueryServerString)
  Serial number of failed request:  12
  Current serial number in output stream:  12
Comment 11 Ярослав 2013-04-27 08:49:46 UTC
and i did not get how berner disabled fglrx and radeon drivers
Comment 12 Thomas Lübking 2013-04-27 09:35:51 UTC
(In reply to comment #10)
> Well I do not have /var/log.Xorg.0.log  file may be because i already

try: "/var/log/Xorg.0.log" - was a typo ;-)

Before trying to en/disable this or that you'll first have to figure what is currently installed / loaded - ie. what HW you're actually using.

If you mess this up, you'll loose the graphical userinterface, so ensure you've got an editor for the textshell (vim, nano, etc.)

Berner added the kernel modules for the AMD Hardware into eg. /etc/modprobe.d/local_blacklist.conf (any config file in that directory will work) - sth. like:

blacklist fglrx
blacklist radeon
Comment 13 Ярослав 2013-04-27 09:43:36 UTC
Created attachment 79490 [details]
/var/log/X.log.0.log

so should i black list fglrx and radeon or not
i am not good in drivers\hardware
so if you need some more info please ask cause i do not know what to paste
Comment 14 Thomas Lübking 2013-04-27 10:11:58 UTC
Depends on whether you want to use the intel IGP or the AMD GPU (energy drain ./. processing power)

If you want to use the intel chip, just uninstall the fglrx/catalyst package.
Otherwise edit /etc/X11/xorg.conf[.d/fglrx.conf] to use the fglrx driver in Xorg.

To use both drivers at once, you'll need sth. like laid out here:
http://en.gentoo-wiki.com/wiki/Fglrx-hybrid-graphics

For help on how to configure X11 please visit forums of Ubuntu or KDE - that's completely out of scope here.