Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

boinc_client gets blocked on XOpenDisplay () when 2 Xorg sessions are open #2199

Open
paulez opened this issue Oct 30, 2017 · 1 comment
Open

Comments

@paulez
Copy link

paulez commented Oct 30, 2017

When two graphic sessions are opened on my system with only one active, boinc_client gets eventually stuck forever waiting on XOpenDisplay(). Killing the non-active Xorg session or switching back to it will unstuck boinc_client.

% ps aux|grep boinc
boinc      616  0.1  0.1  76512 16276 ?        SNsl oct.25  11:27 /usr/bin/boinc_client --dir /var/lib/boinc --redirectio
boinc     6469 27.0  2.7 375236 227700 ?       SNl  oct.28 471:12 ../../projects/boinc.bakerlab.org_rosetta/minirosetta_3.78_x86_64-pc-linux-gnu @G187193_1-50_MAP_hyb_TMP_v02_i01_t000__krypton.flags -in:file:boinc_wu_zip G187193_1-50_MAP_hyb_TMP_v02_i01_t000__krypton.zip -run:protocol jd2_scripting -silent_gz -mute all -out:file:silent default.out -nstruct 10000 -cpu_run_time 28800 -boinc:max_nstruct 600 -checkpoint_interval 120 -database minirosetta_database -in::file::zip minirosetta_database.zip -boinc::watchdog -run::rng mt19937 -constant_seed -jran 1240652
boinc     8431 15.0  0.0      0     0 ?        ZN   oct.28 238:57 [minirosetta_3.7] <defunct>
boinc     9481 18.7  0.0      0     0 ?        ZN   oct.28 267:20 [wcgrid_mcm1_7.3] <defunct>
boinc     9770  7.4  0.0      0     0 ?        ZN   oct.28 102:17 [minirosetta_3.7] <defunct>
boinc     9822 18.9  0.0      0     0 ?        ZN   oct.28 257:39 [wcgrid_mcm1_7.3] <defunct>
boinc    14127  0.0  0.0      0     0 ?        ZN   oct.28   0:06 [primegrid_genef] <defunct>
boinc    14128 17.8  0.0      0     0 ?        ZN   oct.28 226:39 [wcgrid_mcm1_7.3] <defunct>
paul     21201  0.2  1.4 2969360 120644 ?      Sl   19:10   0:00 /usr/bin/boincmgr
paul     21295  0.0  0.0  11204   896 pts/1    S+   19:12   0:00 grep --color=auto boinc

Backtrace (incomplete) but we can see boinc_client is stuck waiting on XOpenDisplay () to return.

Attaching to process 616
[New LWP 827]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x00007f50e53a7a3d in poll () from /lib64/libc.so.6
(gdb) bt
#0  0x00007f50e53a7a3d in poll () from /lib64/libc.so.6
#1  0x00007f50e50aea9b in ?? () from /usr/lib64/libxcb.so.1
#2  0x00007f50e50ac693 in xcb_connect_to_fd () from /usr/lib64/libxcb.so.1
#3  0x00007f50e50b03d9 in xcb_connect_to_display_with_auth_info () from /usr/lib64/libxcb.so.1
#4  0x00007f50e63d674a in _XConnectXCB () from /usr/lib64/libX11.so.6
#5  0x00007f50e63c7702 in XOpenDisplay () from /usr/lib64/libX11.so.6
#6  0x0000000000494494 in ?? ()
#7  0x00000000004948cf in ?? ()
#8  0x000000000042090e in ?? ()
#9  0x00000000004732c0 in ?? ()
#10 0x00000000004084a0 in ?? ()
#11 0x00007f50e52e9640 in __libc_start_main () from /lib64/libc.so.6
#12 0x0000000000408a59 in ?? ()

I suspect that is because the non active Xorg server doesn't answer requests until it gets active again. As a result the boinc_client process gets fully stuck and unit processing eventually stops, as computing processes eventually get into zombie state when they finish their work.

@makeasnek
Copy link
Member

makeasnek commented Apr 26, 2023

A bounty has been started by The SCI to fix this issue, it is currently at $100 USD. You can contribute to, see the total amount of, and claim it at the link below. The bounty will continue to increase until it is claimed. TheSCInitiative/bounties#6

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Backlog
Status: Backlog
Development

No branches or pull requests

3 participants