Bug 404634 - Kwin crash on SDL2 application startup
Summary: Kwin crash on SDL2 application startup
Status: RESOLVED DUPLICATE of bug 404176
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 5.14.5
Platform: Slackware Linux
: NOR crash
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-02-21 07:47 UTC by Konrad Rzepecki
Modified: 2019-02-21 10:59 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Konrad Rzepecki 2019-02-21 07:47:10 UTC
Application: kwin_x11 (5.14.5)

Qt Version: 5.11.3
Frameworks Version: 5.54.0
Operating System: Linux 4.19.20 x86_64
Distribution (Platform): Slackware Packages

-- Information about the crash:
Kwin crash when I fireup my SDL2 application. It only apperars only on first and second kwin instance (I mean, orginal - and second started automatically after crash). Third one seems to be immune. Problem back after restart.

SDL2 init code looks that (w.o. error processing):
window = SDL_CreateWindow("Some label", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, screenX, screenY, SDL_WINDOW_FULLSCREEN);
screen = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
back = SDL_CreateTexture(screen, SDL_PIXELFORMAT_RGBA8888, SDL_TEXTUREACCESS_TARGET, screenX, screenY);                                                                  SDL_SetRenderTarget(screen, back);   

screenX and screenY are get in following way:
for (i = 0; i < SDL_GetNumVideoDisplays(); i++) {
	for (j = 0; j < SDL_GetNumDisplayModes(i); j++) {
		SDL_GetDisplayMode(i, j, &mode);
		if ((mode.w * mode.h) > (screenX * screenY)) {
			screenX = mode.w;
			screenY = mode.h; 
		}
	}
}

The crash can be reproduced sometimes.

-- Backtrace:
Application: KWin (kwin_x11), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f6fa9c50ec0 (LWP 2064))]

Thread 6 (Thread 0x7f6f91902700 (LWP 2257)):
#0  0x00007f6fb25391b3 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f6fb429e53a in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007f6fb429e559 in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007f6fb253319c in start_thread () at /lib64/libpthread.so.0
#4  0x00007f6fb0a954cf in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f6f93cb5700 (LWP 2223)):
#0  0x00007f6fb25391b3 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f6fa03d67db in  () at /usr/lib64/xorg/modules/dri/i965_dri.so
#2  0x00007f6fa03d6587 in  () at /usr/lib64/xorg/modules/dri/i965_dri.so
#3  0x00007f6fb253319c in start_thread () at /lib64/libpthread.so.0
#4  0x00007f6fb0a954cf in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f6fa2522700 (LWP 2206)):
#0  0x00007f6fb0a89b12 in ppoll () at /lib64/libc.so.6
#1  0x00007f6fb1104a59 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007f6fb1105d49 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#3  0x00007f6fb10b871b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007f6fb0f0b8f6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#5  0x00007f6fb3a27435 in  () at /usr/lib64/libQt5Qml.so.5
#6  0x00007f6fb0f14ebc in  () at /usr/lib64/libQt5Core.so.5
#7  0x00007f6fb253319c in start_thread () at /lib64/libpthread.so.0
#8  0x00007f6fb0a954cf in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f6fa3fff700 (LWP 2112)):
#0  0x00007f6fb0a89b12 in ppoll () at /lib64/libc.so.6
#1  0x00007f6fb1104a59 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007f6fb1105d49 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#3  0x00007f6fb10b871b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007f6fb0f0b8f6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#5  0x00007f6fb21bb505 in  () at /usr/lib64/libQt5DBus.so.5
#6  0x00007f6fb0f14ebc in  () at /usr/lib64/libQt5Core.so.5
#7  0x00007f6fb253319c in start_thread () at /lib64/libpthread.so.0
#8  0x00007f6fb0a954cf in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f6fa93a2700 (LWP 2088)):
#0  0x00007f6fb0a89a39 in poll () at /lib64/libc.so.6
#1  0x00007f6fb2189d17 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f6fb218b80a in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f6fa98a2ee9 in  () at /usr/lib64/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5
#4  0x00007f6fb0f14ebc in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007f6fb253319c in start_thread () at /lib64/libpthread.so.0
#6  0x00007f6fb0a954cf in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f6fa9c50ec0 (LWP 2064)):
[KCrash Handler]
#6  0x00007f6fb09bf22b in raise () at /lib64/libc.so.6
#7  0x00007f6fb09a1524 in abort () at /lib64/libc.so.6
#8  0x00007f6fb09a140f in _nl_load_domain.cold.0 () at /lib64/libc.so.6
#9  0x00007f6fb09b04f2 in  () at /lib64/libc.so.6
#10 0x00007f6fb20a8abf in  () at /usr/lib64/libepoxy.so.0
#11 0x00007f6fb20e1a8a in  () at /usr/lib64/libepoxy.so.0
#12 0x00007f6fb22ac72b in KWin::GLTexturePrivate::~GLTexturePrivate() () at /usr/lib64/libkwinglutils.so.11
#13 0x00007f6fb22ac749 in KWin::GLTexturePrivate::~GLTexturePrivate() () at /usr/lib64/libkwinglutils.so.11
#14 0x00007f6fb22adb19 in KWin::GLTexture::~GLTexture() () at /usr/lib64/libkwinglutils.so.11
#15 0x00007f6fa2568df1 in  () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#16 0x00007f6fa2568e09 in  () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#17 0x00007f6fb10df80b in QObjectPrivate::deleteChildren() () at /usr/lib64/libQt5Core.so.5
#18 0x00007f6fb10e7fb4 in QObject::~QObject() () at /usr/lib64/libQt5Core.so.5
#19 0x00007f6fb46a7f65 in KWin::Toplevel::~Toplevel() () at /usr/lib64/libkwin.so.5
#20 0x00007f6fb46bd838 in KWin::Deleted::~Deleted() () at /usr/lib64/libkwin.so.5
#21 0x00007f6fb46bda39 in KWin::Deleted::~Deleted() () at /usr/lib64/libkwin.so.5
#22 0x00007f6fb46a701a in  () at /usr/lib64/libkwin.so.5
#23 0x00007f6fb46a73dc in KWin::Compositor::suspend(KWin::Compositor::SuspendReason) () at /usr/lib64/libkwin.so.5
#24 0x00007f6fb10e1fd2 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#25 0x00007f6fb1a79eb1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#26 0x00007f6fb1a81080 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#27 0x00007f6fb10b9909 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#28 0x00007f6fb10bc7bb in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt5Core.so.5
#29 0x00007f6fb1105bdb in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#30 0x00007f6fa993216d in  () at /usr/lib64/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5
#31 0x00007f6fb10b871b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#32 0x00007f6fb10c049e in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#33 0x00007f6fb48442c8 in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
#34 0x00007f6fb09a2b7b in __libc_start_main () at /lib64/libc.so.6
#35 0x000000000040108a in _start ()
[Inferior 1 (process 2064) detached]

Reported using DrKonqi
Comment 1 Vlad Zahorodnii 2019-02-21 08:49:53 UTC
The backtrace looks very familiar. This is probably duplicate of bug 404176. Could you please install kwin debug packages and submit a new backtrace (with debug symbols)?
Comment 2 Konrad Rzepecki 2019-02-21 10:53:46 UTC
I've recompiled kwin with debug symbols - backtrace seems not change much...

Application: KWin (kwin_x11), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f84d33d7ec0 (LWP 1902))]

Thread 6 (Thread 0x7f84b6f3a700 (LWP 2017)):
#0  0x00007f84dbcc01b3 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f84dda2553a in  () at /usr/lib64/libQt5Script.so.5
#2  0x00007f84dda25559 in  () at /usr/lib64/libQt5Script.so.5
#3  0x00007f84dbcba19c in start_thread () at /lib64/libpthread.so.0
#4  0x00007f84da21c4cf in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f84c9464700 (LWP 2013)):
#0  0x00007f84dbcc01b3 in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f84c9af27db in  () at /usr/lib64/xorg/modules/dri/i965_dri.so
#2  0x00007f84c9af2587 in  () at /usr/lib64/xorg/modules/dri/i965_dri.so
#3  0x00007f84dbcba19c in start_thread () at /lib64/libpthread.so.0
#4  0x00007f84da21c4cf in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f84cb7fe700 (LWP 2011)):
#0  0x00007f84da210b12 in ppoll () at /lib64/libc.so.6
#1  0x00007f84da88ba59 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007f84da88cd49 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#3  0x00007f84da83f71b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007f84da6928f6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#5  0x00007f84dd1ae435 in  () at /usr/lib64/libQt5Qml.so.5
#6  0x00007f84da69bebc in  () at /usr/lib64/libQt5Core.so.5
#7  0x00007f84dbcba19c in start_thread () at /lib64/libpthread.so.0
#8  0x00007f84da21c4cf in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f84d1b92700 (LWP 1976)):
#0  0x00007f84da210b12 in ppoll () at /lib64/libc.so.6
#1  0x00007f84da88ba59 in qt_safe_poll(pollfd*, unsigned long, timespec const*) () at /usr/lib64/libQt5Core.so.5
#2  0x00007f84da88cd49 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#3  0x00007f84da83f71b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#4  0x00007f84da6928f6 in QThread::exec() () at /usr/lib64/libQt5Core.so.5
#5  0x00007f84db942505 in  () at /usr/lib64/libQt5DBus.so.5
#6  0x00007f84da69bebc in  () at /usr/lib64/libQt5Core.so.5
#7  0x00007f84dbcba19c in start_thread () at /lib64/libpthread.so.0
#8  0x00007f84da21c4cf in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f84d2b29700 (LWP 1923)):
#0  0x00007f84da210a39 in poll () at /lib64/libc.so.6
#1  0x00007f84db910d17 in  () at /usr/lib64/libxcb.so.1
#2  0x00007f84db91280a in xcb_wait_for_event () at /usr/lib64/libxcb.so.1
#3  0x00007f84d3029ee9 in  () at /usr/lib64/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5
#4  0x00007f84da69bebc in  () at /usr/lib64/libQt5Core.so.5
#5  0x00007f84dbcba19c in start_thread () at /lib64/libpthread.so.0
#6  0x00007f84da21c4cf in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f84d33d7ec0 (LWP 1902)):
[KCrash Handler]
#6  0x00007f84da14622b in raise () at /lib64/libc.so.6
#7  0x00007f84da128524 in abort () at /lib64/libc.so.6
#8  0x00007f84da12840f in _nl_load_domain.cold.0 () at /lib64/libc.so.6
#9  0x00007f84da1374f2 in  () at /lib64/libc.so.6
#10 0x00007f84db82fabf in  () at /usr/lib64/libepoxy.so.0
#11 0x00007f84db868a8a in  () at /usr/lib64/libepoxy.so.0
#12 0x00007f84dba3372b in KWin::GLTexturePrivate::~GLTexturePrivate() () at /usr/lib64/libkwinglutils.so.11
#13 0x00007f84dba33749 in KWin::GLTexturePrivate::~GLTexturePrivate() () at /usr/lib64/libkwinglutils.so.11
#14 0x00007f84dba34b19 in KWin::GLTexture::~GLTexture() () at /usr/lib64/libkwinglutils.so.11
#15 0x00007f84d04f8df1 in KWin::SceneOpenGLDecorationRenderer::~SceneOpenGLDecorationRenderer() () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#16 0x00007f84d04f8e09 in KWin::SceneOpenGLDecorationRenderer::~SceneOpenGLDecorationRenderer() () at /usr/lib64/qt5/plugins/org.kde.kwin.scenes/KWinSceneOpenGL.so
#17 0x00007f84da86680b in QObjectPrivate::deleteChildren() () at /usr/lib64/libQt5Core.so.5
#18 0x00007f84da86efb4 in QObject::~QObject() () at /usr/lib64/libQt5Core.so.5
#19 0x00007f84dde2ef65 in KWin::Toplevel::~Toplevel() () at /usr/lib64/libkwin.so.5
#20 0x00007f84dde44838 in KWin::Deleted::~Deleted() () at /usr/lib64/libkwin.so.5
#21 0x00007f84dde44a39 in KWin::Deleted::~Deleted() () at /usr/lib64/libkwin.so.5
#22 0x00007f84dde2e01a in KWin::Compositor::finish() [clone .part.247] () at /usr/lib64/libkwin.so.5
#23 0x00007f84dde2e3dc in KWin::Compositor::suspend(KWin::Compositor::SuspendReason) () at /usr/lib64/libkwin.so.5
#24 0x00007f84da868fd2 in QObject::event(QEvent*) () at /usr/lib64/libQt5Core.so.5
#25 0x00007f84db200eb1 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#26 0x00007f84db208080 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#27 0x00007f84da840909 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#28 0x00007f84da8437bb in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at /usr/lib64/libQt5Core.so.5
#29 0x00007f84da88cbdb in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#30 0x00007f84d30b916d in  () at /usr/lib64/qt5/plugins/platforms/../../../libQt5XcbQpa.so.5
#31 0x00007f84da83f71b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#32 0x00007f84da84749e in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#33 0x00007f84ddfcb2c8 in kdemain () at /usr/lib64/libkdeinit5_kwin_x11.so
#34 0x00007f84da129b7b in __libc_start_main () at /lib64/libc.so.6
#35 0x000000000040108a in _start () at ../sysdeps/x86_64/start.S:120
[Inferior 1 (process 1902) detached]
Comment 3 Vlad Zahorodnii 2019-02-21 10:59:34 UTC

*** This bug has been marked as a duplicate of bug 404176 ***