Bug 245172

Summary: kwin crashes when system hdd is full
Product: [Plasma] kwin Reporter: omega <biasquez>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: crash CC: plasma-bugs, rele
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description omega 2010-07-19 21:59:01 UTC
Application: kwin (4.4.92 (KDE 4.4.92 (KDE 4.5 RC2)))
KDE Platform Version: 4.4.92 (KDE 4.4.92 (KDE 4.5 RC2))
Qt Version: 4.7.0
Operating System: Linux 2.6.32-24-generic x86_64
Distribution: Ubuntu 10.04.1 LTS

-- Information about the crash:
- What I was doing when the application crashed:

kwin crashes when system hdd is full (no free space available on device)

The crash can be reproduced every time.

-- Backtrace:
Application: KWin (kwin), signal: Bus error
[Current thread is 1 (Thread 0x7f0b6d5757a0 (LWP 1799))]

Thread 2 (Thread 0x7f0b4cbf7710 (LWP 1802)):
#0  0x00007f0b6cdeefe3 in select () at ../sysdeps/unix/syscall-template.S:82
#1  0x00007f0b6961127e in qt_safe_select (nfds=22, fdread=0x1f33be0, fdwrite=0x1f33e78, fdexcept=0x1f34110, orig_timeout=0x0) at kernel/qcore_unix.cpp:82
#2  0x00007f0b696165ab in QEventDispatcherUNIXPrivate::doSelect (this=0x1f33a20, flags=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_unix.cpp:219
#3  0x00007f0b696171db in QEventDispatcherUNIX::processEvents (this=0x1efd9c0, flags=) at kernel/qeventdispatcher_unix.cpp:919
#4  0x00007f0b695e67b2 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007f0b695e6b9c in QEventLoop::exec (this=0x7f0b4cbf6d70, flags=) at kernel/qeventloop.cpp:201
#6  0x00007f0b694f223d in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:490
#7  0x00007f0b695c66d8 in QInotifyFileSystemWatcherEngine::run (this=0x1bfa990) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f0b694f51be in QThreadPrivate::start (arg=0x1bfa990) at thread/qthread_unix.cpp:266
#9  0x00007f0b692639ca in start_thread (arg=<value optimized out>) at pthread_create.c:300
#10 0x00007f0b6cdf66fd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f0b6d5757a0 (LWP 1799)):
[KCrash Handler]
#6  memcpy () at ../sysdeps/x86_64/memcpy.S:196
#7  0x00007f0b69de198a in KSharedDataCache::insert (this=0x1b7b100, key=<value optimized out>, data=<value optimized out>) at /usr/include/bits/string3.h:52
#8  0x00007f0b6c96c9cd in KImageCache::insertImage (this=0x1b7b100, key=..., image=...) at ../../kdeui/util/kimagecache.cpp:80
#9  0x00007f0b6c96cd76 in KImageCache::insertPixmap (this=0x1b7b100, key=..., pixmap=...) at ../../kdeui/util/kimagecache.cpp:99
#10 0x00007f0b6c3806f2 in Plasma::ThemePrivate::scheduledCacheUpdate (this=0x1b77fd0) at ../../plasma/theme.cpp:261
#11 0x00007f0b6c38494c in Plasma::Theme::qt_metacall (this=0x1ae2830, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffa9acf150) at ./theme.moc:119
#12 0x00007f0b695ff7a7 in QMetaObject::activate (sender=0x1b7be80, m=<value optimized out>, local_signal_index=<value optimized out>, argv=0x1) at kernel/qobject.cpp:3280
#13 0x00007f0b695f9599 in QObject::event (this=0x1b7be80, e=0x2256b78) at kernel/qobject.cpp:1183
#14 0x00007f0b6873bcdc in QApplicationPrivate::notify_helper (this=0x1806920, receiver=0x1b7be80, e=0x7fffa9acf8a0) at kernel/qapplication.cpp:4389
#15 0x00007f0b687417cd in QApplication::notify (this=0x7fffa9acfc90, receiver=0x1b7be80, e=0x7fffa9acf8a0) at kernel/qapplication.cpp:4270
#16 0x00007f0b6c8f4926 in KApplication::notify (this=0x7fffa9acfc90, receiver=0x1b7be80, event=0x7fffa9acf8a0) at ../../kdeui/kernel/kapplication.cpp:309
#17 0x00007f0b695e7a8c in QCoreApplication::notifyInternal (this=0x7fffa9acfc90, receiver=0x1b7be80, event=0x7fffa9acf8a0) at kernel/qcoreapplication.cpp:732
#18 0x00007f0b696170b2 in QCoreApplication::sendEvent (this=0x1807330) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#19 QTimerInfoList::activateTimers (this=0x1807330) at kernel/qeventdispatcher_unix.cpp:602
#20 0x00007f0b696171ec in QEventDispatcherUNIX::processEvents (this=0x17e3570, flags=) at kernel/qeventdispatcher_unix.cpp:923
#21 0x00007f0b687ee9af in QEventDispatcherX11::processEvents (this=<value optimized out>, flags=) at kernel/qeventdispatcher_x11.cpp:152
#22 0x00007f0b695e67b2 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#23 0x00007f0b695e6b9c in QEventLoop::exec (this=0x7fffa9acfbd0, flags=) at kernel/qeventloop.cpp:201
#24 0x00007f0b695eac4b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#25 0x00007f0b6d0e865d in kdemain (argc=<value optimized out>, argv=<value optimized out>) at ../../kwin/main.cpp:531
#26 0x00007f0b6cd2ec4d in __libc_start_main (main=<value optimized out>, argc=<value optimized out>, ubp_av=<value optimized out>, init=<value optimized out>, fini=<value optimized out>, 
    rtld_fini=<value optimized out>, stack_end=0x7fffa9ad0298) at libc-start.c:226
#27 0x00000000004006b9 in _start ()

Reported using DrKonqi
Comment 1 Thomas Lübking 2010-07-19 22:14:08 UTC
Nearly everything (!) crashes when your HDD is entirely full, possibly including the kernel (since it looses the ability to swap out memory, at some point you'll get memory corruptions everywhere)

The particular bug is in libplasma/kimagecache, failing to cache a rendered pixmap - but i heavily doubt this is in scope...

(Sidenote: to keep your system in decent state you should keep about 10% of the HDDs unused to allow restructuring, filesystem cleanups etc.)
Comment 2 Christoph Feck 2010-07-21 00:08:22 UTC
*** Bug 245171 has been marked as a duplicate of this bug. ***
Comment 3 Nicolas L. 2010-12-06 14:27:52 UTC
*** Bug 258996 has been marked as a duplicate of this bug. ***