Summary: | kded collects lots of passive grabs, which gradually slow down the X server. | ||
---|---|---|---|
Product: | [Unmaintained] kdelibs | Reporter: | Lasse Collin <lasse.collin> |
Component: | kded | Assignee: | Lubos Lunak <l.lunak> |
Status: | RESOLVED WORKSFORME | ||
Severity: | normal | CC: | dseifert |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Lasse Collin
2007-05-03 19:39:36 UTC
I think this should be fixed in X. The X docs don't seem to say anything about repeated grabs, but e.g. the description of XUngrabKey() IMHO implies that they should not be stacked, i.e. that if such a grab already exists the next one should be a no-op and the very first ungrab should release it. Therefore I think the second patch in the x.org bugreport is correct. If nobody does anything about the x.org bugreport I suggest mailing the xorg@lists.freedesktop.org mailing list. *** This bug has been confirmed by popular vote. *** I got no reply to my post <http://lists.freedesktop.org/archives/xorg/2007-May/025054.html> but on #xorg-devel@Freenode I was told that the X11 client should be fixed. Currently it seems that the actual behavior (stacking vs. erasing the old grab) won't change. Maybe they will change from growing the linked list to reference counting, which will make the server suffer a lot less from large amount of grabs. Everyone agreed that the documentation is ambiguous, so relying on repeated grabs is a bad idea in any case. It seems I've talked somebody from X.org into the fact that this should be fixed in X.org after all. Please test the patch from the linked bugreport if possible. I will test the patch. Unfortunately I usually don't have long uptimes in the summer, and this bug isn't obvious without at least one week uptime. It may take some time before I'm able to confirm that the patch works. It looks good to me though (definitely better than my patches). I just had 22 days of uptime, and things were still running smoothly. Also, logging out didn't take more time than usually. Thus, this bug seems to be fixed now. Thank you. |