Bug 347577

Summary: Baloo asserts on low inotify limit
Product: [Unmaintained] Baloo Reporter: Aleix Pol <aleixpol>
Component: Baloo File DaemonAssignee: Vishesh Handa <me>
Status: RESOLVED FIXED    
Severity: crash Keywords: drkonqi
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Aleix Pol 2015-05-11 22:49:57 UTC
Application: baloo_file (5.9.90)
 (Compiled from sources)
Qt Version: 5.5.0
Operating System: Linux 4.0.1-1-ARCH x86_64
Distribution: "Arch Linux"

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

- Unusual behavior I noticed:
I got doctor konqi, I'm not used to getting doctor konqi when I start.

-- Backtrace:
Application: Baloo File (baloo_file), signal: Aborted
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f903a7c8800 (LWP 19472))]

Thread 2 (Thread 0x7f9037812700 (LWP 19476)):
#0  0x00007f904629e4ed in poll () from /usr/lib/libc.so.6
#1  0x00007f9045b919f2 in ?? () from /usr/lib/libxcb.so.1
#2  0x00007f9045b9356f in xcb_wait_for_event () from /usr/lib/libxcb.so.1
#3  0x00007f903a53ac17 in QXcbEventReader::run (this=0x1d4c380) at /home/kde-devel/frameworks/qt55/qtbase/src/plugins/platforms/xcb/qxcbconnection.cpp:1212
#4  0x00007f9046e46913 in QThreadPrivate::start (arg=0x1d4c380) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/thread/qthread_unix.cpp:331
#5  0x00007f9044e01374 in start_thread () from /usr/lib/libpthread.so.0
#6  0x00007f90462a727d in clone () from /usr/lib/libc.so.6

Thread 1 (Thread 0x7f903a7c8800 (LWP 19472)):
[KCrash Handler]
#6  0x00007f90461f24b7 in raise () from /usr/lib/libc.so.6
#7  0x00007f90461f388a in abort () from /usr/lib/libc.so.6
#8  0x00007f9046e33b76 in qt_message_fatal (context=..., message=...) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/global/qlogging.cpp:1575
#9  0x00007f9046e302e2 in QMessageLogger::fatal (this=0x7ffec198fdd0, msg=0x7f904714c6f8 "ASSERT failure in %s: \"%s\", file %s, line %d") at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/global/qlogging.cpp:777
#10 0x00007f9046e29617 in qt_assert_x (where=0x469465 "Baloo::FileWatch", what=0x469438 "inotify limit is too low. Please increase it", file=0x469308 "/home/kde-devel/frameworks/baloo/src/file/filewatch.cpp", line=212) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/global/qglobal.cpp:2902
#11 0x00000000004524c3 in Baloo::FileWatch::slotInotifyWatchUserLimitReached (this=0x7ffec1991100, path=...) at /home/kde-devel/frameworks/baloo/src/file/filewatch.cpp:212
#12 0x000000000045353f in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QString const&>, void, void (Baloo::FileWatch::*)(QString const&)>::call (f=(void (Baloo::FileWatch::*)(Baloo::FileWatch * const, const QString &)) 0x452494 <Baloo::FileWatch::slotInotifyWatchUserLimitReached(QString const&)>, o=0x7ffec1991100, arg=0x7ffec19900c0) at /home/kde-devel/kde5/include/QtCore/qobjectdefs_impl.h:501
#13 0x00000000004533b4 in QtPrivate::FunctionPointer<void (Baloo::FileWatch::*)(QString const&)>::call<QtPrivate::List<QString const&>, void> (f=(void (Baloo::FileWatch::*)(Baloo::FileWatch * const, const QString &)) 0x452494 <Baloo::FileWatch::slotInotifyWatchUserLimitReached(QString const&)>, o=0x7ffec1991100, arg=0x7ffec19900c0) at /home/kde-devel/kde5/include/QtCore/qobjectdefs_impl.h:520
#14 0x0000000000452fc9 in QtPrivate::QSlotObject<void (Baloo::FileWatch::*)(QString const&), QtPrivate::List<QString const&>, void>::impl (which=1, this_=0x1ddfe80, r=0x7ffec1991100, a=0x7ffec19900c0, ret=0x0) at /home/kde-devel/kde5/include/QtCore/qobject_impl.h:143
#15 0x00007f90470af169 in QtPrivate::QSlotObjectBase::call (this=0x1ddfe80, r=0x7ffec1991100, a=0x7ffec19900c0) at ../../include/QtCore/../../../../frameworks/qt55/qtbase/src/corelib/kernel/qobject_impl.h:124
#16 0x00007f90470ac220 in QMetaObject::activate (sender=0x1dbbcb0, signalOffset=3, local_signal_index=10, argv=0x7ffec19900c0) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qobject.cpp:3703
#17 0x00007f90470abb38 in QMetaObject::activate (sender=0x1dbbcb0, m=0x681360 <KInotify::staticMetaObject>, local_signal_index=10, argv=0x7ffec19900c0) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qobject.cpp:3583
#18 0x000000000045ac91 in KInotify::watchUserLimitReached (this=0x1dbbcb0, _t1=...) at src/file/moc_kinotify.cpp:351
#19 0x000000000045bf55 in KInotify::Private::addWatch (this=0x1d97bc0, path=...) at /home/kde-devel/frameworks/baloo/src/file/kinotify.cpp:139
#20 0x000000000045c323 in KInotify::Private::_k_addWatches (this=0x1d97bc0) at /home/kde-devel/frameworks/baloo/src/file/kinotify.cpp:176
#21 0x000000000045a53f in KInotify::qt_static_metacall (_o=0x1dbbcb0, _c=QMetaObject::InvokeMetaMethod, _id=17, _a=0x1054e030) at src/file/moc_kinotify.cpp:159
#22 0x00007f90470a4861 in QMetaCallEvent::placeMetaCall (this=0x3ab3280, object=0x1dbbcb0) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qobject.cpp:486
#23 0x00007f90470a5912 in QObject::event (this=0x1dbbcb0, e=0x3ab3280) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qobject.cpp:1246
#24 0x00007f9047dc5ca2 in QApplicationPrivate::notify_helper (this=0x1d32ee0, receiver=0x1dbbcb0, e=0x3ab3280) at /home/kde-devel/frameworks/qt55/qtbase/src/widgets/kernel/qapplication.cpp:3717
#25 0x00007f9047dc3418 in QApplication::notify (this=0x7ffec19911f0, receiver=0x1dbbcb0, e=0x3ab3280) at /home/kde-devel/frameworks/qt55/qtbase/src/widgets/kernel/qapplication.cpp:3161
#26 0x00007f904706deb4 in QCoreApplication::notifyInternal (this=0x7ffec19911f0, receiver=0x1dbbcb0, event=0x3ab3280) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qcoreapplication.cpp:965
#27 0x00007f9047071b8b in QCoreApplication::sendEvent (receiver=0x1dbbcb0, event=0x3ab3280) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qcoreapplication.h:224
#28 0x00007f904706f1ed in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x1d31bd0) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qcoreapplication.cpp:1582
#29 0x00007f904706eb9c in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qcoreapplication.cpp:1440
#30 0x00007f90470e3044 in postEventSourceDispatch (s=0x1d6c530) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:271
#31 0x00007f903f9eb9fd in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#32 0x00007f903f9ebce0 in ?? () from /usr/lib/libglib-2.0.so.0
#33 0x00007f903f9ebd8c in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#34 0x00007f90470e37ff in QEventDispatcherGlib::processEvents (this=0x1d64ed0, flags=...) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:418
#35 0x00007f903a580164 in QPAEventDispatcherGlib::processEvents (this=0x1d64ed0, flags=...) at /home/kde-devel/frameworks/qt55/qtbase/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:115
#36 0x00007f904706aab4 in QEventLoop::processEvents (this=0x7ffec1990fb0, flags=...) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qeventloop.cpp:128
#37 0x00007f904706ad8d in QEventLoop::exec (this=0x7ffec1990fb0, flags=...) at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qeventloop.cpp:204
#38 0x00007f904706e58e in QCoreApplication::exec () at /home/kde-devel/frameworks/qt55/qtbase/src/corelib/kernel/qcoreapplication.cpp:1218
#39 0x00007f904764a36c in QGuiApplication::exec () at /home/kde-devel/frameworks/qt55/qtbase/src/gui/kernel/qguiapplication.cpp:1528
#40 0x00007f9047dc2df9 in QApplication::exec () at /home/kde-devel/frameworks/qt55/qtbase/src/widgets/kernel/qapplication.cpp:2977
#41 0x00000000004361e5 in main (argc=1, argv=0x7ffec1991548) at /home/kde-devel/frameworks/baloo/src/file/main.cpp:103

Reported using DrKonqi
Comment 1 Vishesh Handa 2015-05-18 12:44:51 UTC
Git commit 18a3ca28eaf044ddc83b9106346e7b757603f39a by Vishesh Handa.
Committed on 14/05/2015 at 15:29.
Pushed by vhanda into branch 'master'.

FileWatch: Call the kauth helper to increase the inotify limit

Instead of just crashing via an assert

M  +8    -17   src/file/filewatch.cpp

http://commits.kde.org/baloo/18a3ca28eaf044ddc83b9106346e7b757603f39a