Description of problem: File descriptors leaked on each login Version-Release number of selected component (if applicable): 2.4.4.5-1 How reproducible: Happens always Steps to Reproduce: 1. Log in and out multiple times Actual results: The number of file descriptors opened by gdm-binary increases Expected results: The number of file descriptors is the same each time the login dialog is displayed. Additional info: Here follow listnings of the /proc/%d/fd directory after 0, 1, and 3 logins: total 9 lr-x------ 1 root root 64 Jan 8 23:37 0 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:37 1 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:37 2 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:37 3 -> socket:[6117] l-wx------ 1 root root 64 Jan 8 23:37 5 -> pipe:[6102] l-wx------ 1 root root 64 Jan 8 23:37 6 -> /dev/console lr-x------ 1 root root 64 Jan 8 23:37 7 -> pipe:[6105] l-wx------ 1 root root 64 Jan 8 23:37 8 -> pipe:[6144] lr-x------ 1 root root 64 Jan 8 23:37 9 -> pipe:[6145] total 12 lr-x------ 1 root root 64 Jan 8 23:38 0 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:38 1 -> /dev/null l-wx------ 1 root root 64 Jan 8 23:38 10 -> pipe:[7167] l-wx------ 1 root root 64 Jan 8 23:38 11 -> pipe:[7272] lr-x------ 1 root root 64 Jan 8 23:38 12 -> pipe:[7273] lrwx------ 1 root root 64 Jan 8 23:38 2 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:38 3 -> socket:[6117] lr-x------ 1 root root 64 Jan 8 23:38 4 -> pipe:[7167] l-wx------ 1 root root 64 Jan 8 23:38 5 -> pipe:[6102] l-wx------ 1 root root 64 Jan 8 23:38 6 -> /dev/console lr-x------ 1 root root 64 Jan 8 23:38 7 -> pipe:[6105] lrwx------ 1 root root 64 Jan 8 23:38 8 -> socket:[7248] lr-x------ 1 root root 64 Jan 8 23:39 0 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:39 1 -> /dev/null l-wx------ 1 root root 64 Jan 8 23:39 10 -> pipe:[7167] lrwx------ 1 root root 64 Jan 8 23:39 11 -> socket:[7619] l-wx------ 1 root root 64 Jan 8 23:39 13 -> pipe:[7643] lr-x------ 1 root root 64 Jan 8 23:39 14 -> pipe:[7644] lrwx------ 1 root root 64 Jan 8 23:39 2 -> /dev/null lrwx------ 1 root root 64 Jan 8 23:39 3 -> socket:[6117] lr-x------ 1 root root 64 Jan 8 23:39 4 -> pipe:[7167] l-wx------ 1 root root 64 Jan 8 23:39 5 -> pipe:[6102] l-wx------ 1 root root 64 Jan 8 23:39 6 -> /dev/console lr-x------ 1 root root 64 Jan 8 23:39 7 -> pipe:[6105] lrwx------ 1 root root 64 Jan 8 23:39 8 -> socket:[7248] lrwx------ 1 root root 64 Jan 8 23:39 9 -> socket:[7489]
Created attachment 97423 [details] display declared dead too early
*** Bug 114551 has been marked as a duplicate of this bug. ***
FYI, this is known upstream http://bugzilla.gnome.org/show_bug.cgi?id=126465 But this patch can be applied now as a fix leaving it open for the developer to decide on resolution marking easyfix and patch
Bug #110315 was the same problem, now patched in rawhide gdm-2.4.4.5-8 with the recount method used in gdm-2.5.90.0. In my testing here it seems to prevent the file descriptor leak as well as the broken Maximum XDMCP session counter problem. Should I remove the recount and add Bart's patch instead? Bart's solution is much cleaner if it solves both the file descriptor leak and xdmcp_sessions counter problems. Whatever Bart and George Lebl agree on, I will apply to FC2 rawhide and FC1 updates.
Eric Harrison's testing indicates that Bart's patch fixes the file descriptor but not xdmcp_session counting problem, while George Lebl's recounting method from gdm-2.5.90.0 seems to avoid both problems in gdm-2.4.4.5. Would it be proper to apply both patches in gdm-2.4.4.5?
Created attachment 97457 [details] gdm-2.4.4.5-xdmcp_sessions.patch Upon further examination and comparison with gdm-2.4.4.7 and upstream CVS, Bart's patch would not be proper after George's change nor is it upstream. This is the updated patch that will go into gdm-2.4.4.5-9 rawhide to match this checkin: http://cvs.gnome.org/bonsai/cvsview2.cgi?diff_mode=context&whitespace_mode=show&root=/cvs/gnome&subdir=gdm2/daemon&command=DIFF_FRAMESET&file=display.c&rev2=1.58.2.1&rev1=1.58
Closing... re-open if you really disagree with this change.