Bug 328437 - WineTest causes kwin to crash
Summary: WineTest causes kwin to crash
Status: RESOLVED UPSTREAM
Alias: None
Product: kwin
Classification: Plasma
Component: general (show other bugs)
Version: 4.10.5
Platform: Debian testing Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-05 06:53 UTC by Francois Gouget
Modified: 2013-12-11 00:19 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments
kwin-20131206-034147.kcrash.txt (1.00 KB, text/plain)
2013-12-10 11:31 UTC, Francois Gouget
Details
kwin-20131206-041648.kcrash.txt: (5.67 KB, text/plain)
2013-12-10 11:32 UTC, Francois Gouget
Details
kwin-20131206-041821.kcrash.txt (2.18 KB, text/plain)
2013-12-10 11:33 UTC, Francois Gouget
Details
kwin-20131206-041821.kcrash.txt (1.94 KB, text/plain)
2013-12-10 11:33 UTC, Francois Gouget
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Francois Gouget 2013-12-05 06:53:11 UTC
Application: kwin (4.10.5)
KDE Platform Version: 4.11.3
Qt Version: 4.8.6
Operating System: Linux 3.11-2-amd64 x86_64
Distribution: Debian GNU/Linux testing (jessie)
Graphics driver: Nvidia 319.72-1

WineTest is Wine's conformance/regression testing suite. Part of the checks involve creating/deleting a bunch of windows with various sizes and properties.

I run WineTest daily on my machine and this night's run caused caused a crash resulting in a crash report dialog this morning. I'm attaching a backtrace which indicates the crash seems to have happened in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>). In the stack trace (which is unfortunately missing some line information) I see that the crash seems to have happened in Nvidia's OpenGL libraries and might be related to threading...
I'll disable the effects to see if the problem persists.


Reproducible: Didn't try

Steps to Reproduce:
1. Install the wine package
2. Download: http://test.winehq.org/builds/winetest-latest.exe
3. Run wine winetest-latest.exe
4. The test run will take 10 to 20 minutes.

Actual Results:  
Crash

Expected Results:  
No crash!

Application: KWin (kwin), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f318d0c17c0 (LWP 13292))]

Thread 2 (Thread 0x7f315f45d700 (LWP 13307)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f31891caa4b in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#2  0x00007f31891caa89 in ?? () from /usr/lib/x86_64-linux-gnu/libQtScript.so.4
#3  0x00007f31811b7e0e in start_thread (arg=0x7f315f45d700) at pthread_create.c:311
#4  0x00007f318c8fe9ed in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:113

Thread 1 (Thread 0x7f318d0c17c0 (LWP 13292)):
[KCrash Handler]
#5  0x00007f317fe53854 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#6  0x00007f317ff0dee1 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#7  0x00007f317fc7b14a in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#8  0x00007f317fbf8fb9 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#9  0x00007f317fec3d9c in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#10 0x00007f317fec415b in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#11 0x00007f317fe6a6a3 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#12 0x00007f317fe6d058 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#13 0x00007f317fbbe670 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#14 0x00007f318cc8932f in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#15 0x00007f318cc83118 in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#16 0x00007f318cc6f483 in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#17 0x00007f3187e34691 in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#18 0x00007f31871bc75c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#19 0x00007f31871c2dd0 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#20 0x00007f318c3eb49a in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#21 0x00007f3187e1c33d in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#22 0x00007f3187e4bf83 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#23 0x00007f3187e4c970 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f318725b1b6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f3187e1af9f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#26 0x00007f3187e1b295 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#27 0x00007f3187e208db in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#28 0x00007f318cc287ef in kdemain () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#29 0x00007f318c837995 in __libc_start_main (main=0x4006d0, argc=3, ubp_av=0x7fff1c6f7ac8, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7fff1c6f7ab8) at libc-start.c:260
#30 0x00000000004006fe in _start ()
Comment 1 Martin Flöser 2013-12-05 07:21:07 UTC
sorry crashes in the nvidia blob. There is nothing we can do about that
Comment 2 Thomas Lübking 2013-12-05 08:10:03 UTC
the bug lacks debug symbols, but ftr. see bug #306709

@francois
do the backtraces always look the same?
can you install debug packages?:
   http://techbase.kde.org/Development/Tutorials/Debugging/How_to_create_useful_crash_reports
Comment 3 Francois Gouget 2013-12-10 11:31:50 UTC
Created attachment 84017 [details]
kwin-20131206-034147.kcrash.txt
Comment 4 Francois Gouget 2013-12-10 11:32:38 UTC
Created attachment 84018 [details]
kwin-20131206-041648.kcrash.txt:
Comment 5 Francois Gouget 2013-12-10 11:33:19 UTC
Created attachment 84019 [details]
kwin-20131206-041821.kcrash.txt
Comment 6 Francois Gouget 2013-12-10 11:33:43 UTC
Created attachment 84020 [details]
kwin-20131206-041821.kcrash.txt
Comment 7 Francois Gouget 2013-12-10 11:36:33 UTC
> @francois
> do the backtraces always look the same?

No, they are quite different. Also they may be a bit random: I run WineTest 4 times per night but only get one to three crash reports.

> can you install debug packages?:

I did not find a Debian debug package for kwin but I installed kde-runtime-dbg, kdelibs5-dbg and libqt4-dbg. I uploaded the new backtraces.
Comment 8 Thomas Lübking 2013-12-11 00:19:45 UTC
traces of comment #5 and comment #6 match bug #306709

comment #5 has the deepest known trace:

#6  0x00007f8df26eedd0 in vtable for QtSharedPointer::ExternalRefCountData () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f8df23a2a61 in QObject::property (this=0x1fdb290, name=0x7f8df563fbea "visibleRect") at kernel/qobject.cpp:3752
#8  0x00007f8df5630402 in KWin::EffectWindow::expandedGeometry() const () from /usr/lib/libkwineffects.so.1abi4
#9  0x00007f8df563bd81 in KWin::AnimationEffect::updateLayerRepaints() () from /usr/lib/libkwineffects.so.1abi4
#10 0x00007f8df563c62a in KWin::AnimationEffect::triggerRepaint() () from /usr/lib/libkwineffects.so.1abi4
#11 0x00007f8df563cf8d in KWin::AnimationEffect::animate(KWin::EffectWindow*, KWin::AnimationEffect::Attribute, unsigned int, int, KWin::FPx2, QEasingCurve, int, KWin::FPx2) () from /usr/lib/libkwineffects.so.1abi4

----------------

comment #4 ends deeeeeep in the nvidia blob and is similar to the OP, but the kwin part unfortunately still lacks some debug symbols:

#6  0x00007f0892e51854 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#7  0x00007f0892f0bee1 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#8  0x00007f0892c7914a in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#9  0x00007f0892bf6fb9 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#10 0x00007f0892ec1d9c in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#11 0x00007f0892ec215b in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#12 0x00007f0892e68e7a in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#13 0x00007f0892e4c838 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#14 0x00007f089b9264f0 in ?? () from /usr/lib/x86_64-linux-gnu/libGL.so.1
#15 0x00007f089b92696a in ?? () from /usr/lib/x86_64-linux-gnu/libGL.so.1
#16 0x00007f0892bb1a55 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#17 0x00007f0892bb32ad in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#18 0x00007f0892bb3390 in ?? () from /usr/lib/x86_64-linux-gnu/libnvidia-glcore.so.319.72
#19 0x00007f089bc0f9e5 in KWin::GLRenderTarget::enable() () from /usr/lib/libkwinglutils.so.1abi1
#20 0x00007f089bc0fba5 in KWin::GLRenderTarget::pushRenderTarget(KWin::GLRenderTarget*) () from /usr/lib/libkwinglutils.so.1abi1
#21 0x00007f089bc0ff98 in KWin::GLRenderTarget::attachTexture(KWin::GLTexture const&) () from /usr/lib/libkwinglutils.so.1abi1
#22 0x00007f088102e3d8 in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#23 0x00007f088102f08c in ?? () from /usr/lib/kde4/kwin4_effect_builtins.so
#24 0x00007f089fc92e71 in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#25 0x00007f089fc726b1 in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#26 0x00007f089fc92dc8 in ?? () from /usr/lib/kde4/libkdeinit/libkdeinit4_kwin.so
#27 0x00007f089e0b8821 in KWin::Effect::paintWindow(KWin::EffectWindow*, int, QRegion, KWin::WindowPaintData&) () from /usr/lib/libkwineffects.so.1abi4

-------------------

comment #3 is in password getting =)
#0  0x00007f5bed1a649d in __fgetpwent_r (stream=0x7fff79f86110, resbuf=0x7fff79f86110, buffer=0x2d23 <Address 0x2d23 out of bounds>, buflen=18446744073709551615, result=0x7f5bed1a6341 <__GI__nss_files_parse_pwent+433>) at fgetpwent_r.c:77
#1  0x0000000000000000 in ?? ()


That's rather memory corruption.


===============================================

a) tried to reproduce this with xrender compositing?
b) can you run kwin in valgrind?