[v1.9.2, Linux] Futex-lock based hang in not using Network Manager & Failure to save for Anycubic Mono X 6k

2022-4-22 517

I recently purchased an Anycubic Mono X 6K after finding out chitubox supported it as of v1.9.2, but encountered several significant software issues trying to use chitubox with it. Below are the individual errors and their relevant workarounds until the devs can fix the issues involved.

Issue 1 :- With chitubox extending its networked printer featureset, it now implicitly but critically requires Network Manager in order to even launch, as it otherwise will hang indefinitely immediately after launch as it tries getting a response from Network Manager over DBus, with no fallback solution. This results in a permanent Futex Locked thread with no way to disable the networking code and continue using it normally. I was only able to even discover this dependancy using strace, as there is no error at all and it just sits there waiting indefinitely. While it's somewhat understandable for this oversight to exist, there needs to at least be an error code and an explicit dependancy indicated if the developers don't intend to support other solutions such as Connman, which I personally was using. Unfortunately the only workaround for this is to just straight up install Network Manager and have it running instead of your normal solution. Ideally there would be compatability for multiple solutions, but if the devs are not inclined to do so, there should at least be a way to disable the networking part of the code, which I couldn't find, so that regular users can carry on if they don't absolutely need that functionality.

The relevant strace section is below:

[pid 24080] sendmsg(8, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\1\0\1#\0\0\0\26\0\0\0\217\0\0\0\1\1o\0\37\0\0\0/org/fre"..., iov_len=160}, {iov_base="\36\0\0\0org.freedesktop.NetworkManag"..., iov_len=35}], msg_iovlen=2, msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 195
[pid 24080] poll([{fd=6, events=POLLIN}, {fd=8, events=POLLIN}], 2, 24601) = 1 ([{fd=6, revents=POLLIN}])
[pid 24080] read(6, "\1\0\0\0\0\0\0\0", 16) = 8
[pid 24080] poll([{fd=6, events=POLLIN}, {fd=8, events=POLLIN}], 2, 24601) = 1 ([{fd=8, revents=POLLIN}])
[pid 24080] recvmsg(8, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="l\3\1\1e\0\0\0\346\3\0\0e\0\0\0\6\1s\0\5\0\0\0:1.40\0\0\0"..., iov_len=2048}], msg_iovlen=1, msg_controllen=0, msg_flags=MSG_CMSG_CLOEXEC}, MSG_CMSG_CLOEXEC) = 221
[pid 24080] recvmsg(8, {msg_namelen=0}, MSG_CMSG_CLOEXEC) = -1 EAGAIN (Resource temporarily unavailable)
[pid 24080] write(6, "\1\0\0\0\0\0\0\0", 8) = 8
[pid 24080] futex(0x2103050, FUTEX_WAKE_PRIVATE, 2147483647) = 1


Issue 2 :- When attempting to save a .pwmb file for my Anycubic Mono X 6K, the Anycubic plugin fails at the file conversion stage, with the following error in the log, yet the application UI reports 'writing successful', despite no file being written:

2022/04/21-18:50:54:  processFinishSlot 223 process is finish -1 QProcess::CrashExit

This appears to be solvable by running the program as sudo at least once, but I also symlinked my root config to my user's config, so it may have overwriten some particular setting that was causing the issue. This is presumably an issue with the Anycubic plugin attempting to access something it either should not be or the thread permissions perhaps being misconfigured.


Hopefully these issues can be resolved soon and with luck these workarounds help others stuck scratching their heads at the same issues.

New Post (2)
  • 7 Months+
    Quote 2Floor


    I had the same problem and was lucky to find this article through geometry dash bloodbath. Even though I had previously searched online and asked professionals, they could not help me.

  • Guest 7 Months+
    Quote 3Floor

    The issues are outlined in great depth, and everything is quite transparent and honest. There is no question that having the information is advantageous. Is my website incredibly lucrative in terms of sales? Please look at the following: run 3