Bug#812835: boinc-client: leaks hundreds of x11 connections
Preston Maness
aspensmonster at riseup.net
Wed Jan 27 05:46:42 UTC 2016
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512
Howdy all,
I've got a new PR open for upstream:
https://github.com/BOINC/boinc/pull/1478
And I've attached the patch in the meantime. The patch just closes the
connections that are opened to the Xservers. I had erroneously thought
that dropping out of scope of the function in hostinfo_unix.cpp would
close the connection automatically. With this patch, I don't see the
boinc client pilling up X11 connections like it was before.
Cheers,
Preston
On 01/26/2016 11:10 PM, Preston Maness wrote:
> Howdy,
>
> I'm almost positive this is a bug introduced by my pull request to
> add XSS-based idle detection back into the boinc client:
>
> https://github.com/BOINC/boinc/pull/1453
>
> I am able to replicate the issue (seeing the number of socket
> connections grow for the boinc process). Sorry about that. Looks
> like I didn't have a corresponding XCloseDisplay() to go with the
> XOpenDisplay(). I'm going to re-open the PR with what I hope is a
> fix to this after testing it on my end.
>
> Cheers, Preston
>
> On 01/26/2016 07:54 PM, Dan Merillat wrote:
>> Package: boinc-client Version: 7.6.22+dfsg-1exp3 Severity:
>> important
>
>> Dear Maintainer,
>
>> boinc-client caused "maximum number of clients reached" errors
>> on my system. xrestop showed 248 clients. Ran 'service
>> boinc-client stop' and the client count dropped to 28.
>
>> Multiple reboots had the same problem - after a few minutes the
>> client list would start filling up with <unknown> clients.
>
>> I had installed boinc a long time ago, intending to use it but
>> never set it up - no projects or work. The problems began only
>> after a reboot on Monday, but the last change was january 3:
>
>> 2016-01-03 00:04:52 upgrade boinc-client:amd64 7.0.15+dfsg-1
>> 7.6.22+dfsg-1
>
>> The only explanation is that there was no reboot after that
>> upgrade, so perhaps the client either did not start or remained
>> running the old 7.0.15 version.
>
>> I verified the boinc was the cause by purging boinc-client and
>> re-installing from experimental - after a few minutes it leaked
>> again:
>
>> harik at dan:~$ sudo ls -l /proc/`pidof boinc`/fd total 0 lr-x------
>> 1 boinc boinc 64 Jan 26 18:50 0 -> /dev/null lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 1 -> socket:[88000] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 10 -> socket:[127916] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 100 -> socket:[129791] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 101 -> socket:[129792] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 102 -> socket:[129828] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 103 -> socket:[129836] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 104 -> socket:[130925] lrwx------ 1 boinc
>> boinc 64 Jan 26 20:42 105 -> socket:[131250] lrwx------ 1 boinc
>> boinc 64 Jan 26 20:42 106 -> socket:[131251] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 107 -> socket:[131252] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 108 -> socket:[131288] lrwx------ 1 boinc
>> boinc 64 Jan 26 18:50 109 -> socket:[131291] ... harik at dan:~$
>> sudo ls -l /proc/`pidof boinc`/fd | grep socket | wc -l 212
>
>> Killing boinc dropped my client count from 242 to 33, and I
>> could open new windows again.
>
>> -- System Information: Debian Release: stretch/sid APT prefers
>> unstable APT policy: (500, 'unstable'), (500, 'testing'), (1,
>> 'experimental') Architecture: amd64 (x86_64) Foreign
>> Architectures: i386, armel
>
>> Kernel: Linux 4.2.0-dan (SMP w/4 CPU cores; PREEMPT) Locale:
>> LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell:
>> /bin/sh linked to /bin/dash Init: systemd (via
>> /run/systemd/system)
>
>> Versions of packages boinc-client depends on: ii adduser
>> 3.113+nmu3 ii ca-certificates 20160104 ii debconf
>> [debconf-2.0] 1.5.58 ii init-system-helpers 1.27 ii
>> libboinc7 7.6.22+dfsg-1exp3 ii libc6 2.21-7 ii
>> libcurl3 7.46.0-1+b1 ii libgcc1 1:6-20160122-1
>> ii libstdc++6 6-20160122-1 ii libx11-6 2:1.6.3-1 ii
>> libxss1 1:1.2.2-1 pn python:any <none> ii zlib1g
>> 1:1.2.8.dfsg-2+b1
>
>> boinc-client recommends no packages.
>
>> Versions of packages boinc-client suggests: pn
>> boinc-client-fglrx <none> pn boinc-client-nvidia-cuda <none> pn
>> boinc-client-opencl <none> ii boinc-manager
>> 7.6.22+dfsg-1exp3 ii x11-xserver-utils 7.7+5
>
>> -- Configuration Files: /etc/boinc-client/gui_rpc_auth.cfg
>> [Errno 13] Permission denied:
>> u'/etc/boinc-client/gui_rpc_auth.cfg'
>
>> -- debconf information: boinc-client/remove_boinc_dir: true
>
>
>
-----BEGIN PGP SIGNATURE-----
iQIcBAEBCgAGBQJWqFmwAAoJEFpzcfOOuHp0Zm8P/jjPT7xYllLqpFr90DuxvCJZ
FHpfp10C2rbO752iqmAuYhbsWqIVo4y3AxKVKH5bOS+0OxAIeoIPm7BLDFwGeJOT
opkZEPHho7gpcWbE3EXT3FAW9MCWbbOQGn3aJPR3y9VQdsUtiNJHtcG1L8vcnX0Q
eEksLLRaGspV/HKg9UVwpEC7eIK02Bid/1GZHPgmroWucn8ix/mwl1V/xt5lcAq8
gnVlfIhmmQ1UTxI88UTeOOSVFNPQPuJ2WIRWjwZ7+GKv8HjHGuN6oaoT9sOFcn5Y
Vpi6G78e2DymQQE6QL+Td64fthp/Mixx2aHRrnluLW8hFeiG9tKcqbfoW2RKGjVj
Z8utZxd8AYMMiWJ42msRV+hus6KbFaToIG1ONH4SJ9kdKJVKXcvlRyasUf+0KBtJ
eXgQyygVLwlIRD/BJ0sCthQ6mvYlCfHqy+k5JLR1yHZ3NmzDblL0ajR7N23x6hDd
Qn0TjkKc94vFoTXx7M/iHQOlXTJxFuBXtQnCP/ASyCqXYs5JbIJLZ/zRZwT2tK79
JVJbfgWUTx8nf4QcFVwTaeAF3Qb/+rZcYiosLb71xvRrLzcDeLtBQXY8ShlP8CH2
4cCikTsW5vtAlzCTjG/Cxod2SELTBKoxDiUahzS4iROxZQxZfVUScFfnCN53tjsB
sWW3iyy+q0BRyBwp//ae
=4Rp2
-----END PGP SIGNATURE-----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-XSS-Idle-Detection-Bugfix-XCloseDisplay.patch
Type: text/x-patch
Size: 1613 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-boinc-devel/attachments/20160126/2160b553/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-XSS-Idle-Detection-Bugfix-XCloseDisplay.patch.sig
Type: application/pgp-signature
Size: 543 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-boinc-devel/attachments/20160126/2160b553/attachment-0002.sig>
More information about the pkg-boinc-devel
mailing list