[prev in list] [next in list] [prev in thread] [next in thread]
List: kmail-devel
Subject: [Bug 88467] Slow switching between folders under Solaris with NIS
From: Jeremy Rand <jeremy.rand () alcatel ! com>
Date: 2004-08-31 13:58:44
Message-ID: 20040831135844.14731.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=88467
------- Additional Comments From jeremy.rand alcatel com 2004-08-31 15:58 -------
Here is a stack trace:
15906: kmail
----------------- lwp# 1 / thread# 1 --------------------
fd840d40 initgroups (3b0338, 1e, fd77ef98, fd78b1d8, fd785908, fd77efb8) + 4
fe4a04fc KProcess::start(KProcess::RunMode, KProcess::Communication) (ffbed598, 4, \
0, fd891a28, 0, 0) + 6d0 00160f70 KMFolder::updateIndexStreamPtr(bool) (3ac5f8, 1, \
fd8bffd0, 2e35d0, 2dee90, ffffffff) + 1a4 001fc9f8 KMFolderMaildir::close(bool) \
(3ac5f8, 3c, 1fc8ac, 2dee90, ffbed758, ffbed768) + 14c 001240ac \
KMHeaders::setFolder(KMFolder*, bool) (4500a8, 3ba558, 0, 123354, 2d8918, 0) + d58 \
000b901c KMMainWin::folderSelected(KMFolder*, bool) (2efe48, 3ba558, 0, fe73b4e8, \
fe8722a0, 4de6e8) + 108 000afcd8 KMMainWin::qt_invoke(int, QUObject*) (2efe48, 4c, \
ffbeda28, afc28, 2d1994, 0) + b0 fde6387c QObject::activate_signal(QConnectionList*, \
QUObject*) (480750, 420758, ffbeda28, 2c, 495070, ffffffff) + 15c 001160e8 \
KMFolderTree::folderSelected(KMFolder*) (480750, ffbeda28, 1, 2ceafc, 6d61696c, \
696d6170) + 64 00112834 KMFolderTree::doFolderSelected(QListViewItem*) (480750, \
4da410, 1163f4, fd841c44, 0, 0) + 144 001163f8 KMFolderTree::qt_invoke(int, \
QUObject*) (480750, 6c, ffbedc28, 11634c, 2d7a70, 0) + ac fde637c8 \
QObject::activate_signal(QConnectionList*, QUObject*) (480750, 31f6e0, ffbedc28, 9, \
4828f0, 48079c) + a8 fe10998c QListView::currentChanged(QListViewItem*) (480750, \
ffbedc28, 488ad8, 4, 12, 0) + 7c fdf22bfc QListView::setCurrentItem(QListViewItem*) \
(480750, 4da410, 2ceb08, fe2a06b4, 2430, ff0000) + 164 fdf1f3ec \
QListView::contentsMousePressEventEx(QMouseEvent*) (480750, ffbede98, 488ad8, \
ffbedd90, fd69e650, 57af28) + 34c fe7342a8 \
KListView::contentsMousePressEvent(QMouseEvent*) (480750, ffbede98, 0, ffbedef0, a8, \
58) + 264 fdf46d10 QScrollView::viewportMousePressEvent(QMouseEvent*) (480750, \
ffbee480, 2ce9f4, 4811e0, 0, ffbedff8) + b4 fdf465bc \
QScrollView::eventFilter(QObject*, QEvent*) (1, 31f550, ffbee480, 11c0af, 41348243, \
0) + 10c fdf1eae8 QListView::eventFilter(QObject*, QEvent*) (480750, 31f550, \
ffbee480, 2fd4f8, 54c430, 0) + 58 00115e64 KMFolderTree::eventFilter(QObject*, \
QEvent*) (480750, 31f550, ffbee480, 115e48, 16, 20) + 1c fde61560 \
QObject::activate_filters(QEvent*) (0, ffbee480, ffffffff, fd841c44, 6400, 0) + 5c \
fde614a0 QObject::event(QEvent*) (31f550, ffbee480, fdf61168, 0, 81010100, ff0000) + \
c0 fde92e84 QWidget::event(QEvent*) (31f550, ffbee480, 2cc690, fdf60d64, fd69e650, \
57af28) + 18 fde12258 QApplication::internalNotify(QObject*, QEvent*) (0, 31f550, \
ffbee480, 6230, 9d, 2f678c) + d8 fde11920 QApplication::notify(QObject*, QEvent*) \
(0, 31f550, ffbee480, bfffffff, ff35dd60, 7fffffff) + 168 fe46d0a0 \
KApplication::notify(QObject*, QEvent*) (ffbeeac0, 31f550, ffbee480, 2cfc54, \
ffbeeac0, fe29e612) + 118 fddbb500 QETWidget::translateMouseEvent(_XEvent const*) \
(40000000, bfffffff, ffbee480, 2e3074, 54c430, 0) + 9f8 fddb89dc \
QApplication::x11ProcessEvent(_XEvent*) (ffbeeac0, ffbee730, 2e3074, 0, 7fffffff, \
bfffffff) + 500 fddcd12c QEventLoop::processEvents(unsigned) (fe268848, 19, 30a688, \
4, 6400, ff3c6348) + 790 fde24ba0 QEventLoop::enterLoop() (31acf0, fde24b28, \
fe2916d0, 62dc, 0, 5) + 78 fde24a70 QEventLoop::exec() (30a688, 1, fe2916d0, \
fde24a2c, 84, 2e3660) + 44 fde12488 QApplication::exec() (ffbeeac0, ffbee960, \
2e3000, 1, 0, ffbee8d0) + 14 00213ca4 main (ffbeeab0, ffbeea58, ffbeec54, \
2e307c, 0, 0) + 9a0 000994b4 _start (0, 0, 0, 0, 0, 0) + 5c
----------------- lwp# 2 / thread# 2 --------------------
fd75ed38 _dynamiclwps (0, 0, 0, 0, 0, 0)
----------------- lwp# 3 --------------------------------
fd75a728 _lwp_start (0, 0, 0, 0, 0, 0)
-------------------------- thread# 3 --------------------
fd75ddbc _reap_wait (fd7829e0, 20520, 0, fd77e000, 0, 0) + 38
fd75db14 _reaper (fd77ee30, fd784740, fd7829e0, fd77ee08, 1, fe401000) + 38
fd76b728 _thread_start (0, 0, 0, 0, 0, 0) + 40
So, yes, it does look like this isn't in fact a kmail problem but something which \
KProcess just does. I guess I have misattributed this defect to kmail when it is \
more of a core KDE issue. Perhaps I will try my LD_PRELOAD have with more than \
kmail. It may improve performance elsewhere also.
However, the behaviour I see with kmail when I switch folders is kmail seems to fork \
three child processes, one after the other. In each child process, they perform a \
call to initgroups() (through KProcess). So, one switch results in three forks() and \
the initgroups() calls in the three child processes.
Sorry for the lack of a stack trace in the initial bug report.
_______________________________________________
KMail developers mailing list
KMail-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmail-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic