There could be an issue searching for protocol analyzers. Any chance you set the “Custom Low Level Analyzers” directory in the settings? Perhaps to a directory that contained many, many shared libraries? Or perhaps set it to a network directory, or an unusual disk, or some other location that would have a long pause on first access?
I don’t have the “Custom Low Level Analyzers” option set so it isn’t that at least.
Also, have you noticed any operations taking a long time in the application? For example, if you open the application, then connect one of our devices, does it take a long time to get detected? What about saving or exporting a file? Any chance that hangs up for a while at the start?
Nope, seems to work perfectly fine once it is running.
I ran strace
on it, and its hard to tell because the logs move fast, but if it helps, when it starts working it pretty immediately tries to openat
some $HOME/.config/user-dirs.dirs
(which doesn’t exist on my machine).
There is a lot of repeated output in the strace
while logic is blank that looks a bit like:
ppoll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=47, events=POLLIN}, {fd=48, events=POLLIN}], 4, {tv_sec=36, tv_nsec=213000000}, NULL, 8) = 1 ([{fd=13, revents=POLLIN}], left {tv_sec=34, tv_nsec=280421622})
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
read(13, "!", 2) = 1
write(31, "\1\0\0\0\0\0\0\0", 8) = 8
openat(AT_FDCWD, "/home/peter/.config/Logic/config.json", O_RDONLY|O_CLOEXEC) = 100
statx(100, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_ALL|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=26057, ...}) = 0
read(100, "{\n\t\"appIdentification\": {\n\t\t\"mac"..., 26057) = 26057
close(100) = 0
epoll_wait(26, [{events=EPOLLIN, data=0x1f}], 1024, 0) = 1
read(31, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x56102bf95088, FUTEX_WAKE_PRIVATE, 1) = 1
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(48, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
ppoll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=47, events=POLLIN}, {fd=48, events=POLLIN}], 4, {tv_sec=0, tv_nsec=0}, NULL, 8) = 0 (Timeout)
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(48, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
ppoll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=47, events=POLLIN}, {fd=48, events=POLLIN}], 4, {tv_sec=34, tv_nsec=273000000}, NULL, 8) = 1 ([{fd=13, revents=POLLIN}], left {tv_sec=29, tv_nsec=277783620})
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
read(13, "!", 2) = 1
write(31, "\1\0\0\0\0\0\0\0", 8) = 8
openat(AT_FDCWD, "/home/peter/.config/Logic/config.json", O_RDONLY|O_CLOEXEC) = 100
statx(100, "", AT_STATX_SYNC_AS_STAT|AT_EMPTY_PATH, STATX_ALL, {stx_mask=STATX_ALL|STATX_MNT_ID, stx_attributes=0, stx_mode=S_IFREG|0644, stx_size=26057, ...}) = 0
read(100, "{\n\t\"appIdentification\": {\n\t\t\"mac"..., 26057) = 26057
close(100) = 0
epoll_wait(26, [{events=EPOLLIN, data=0x1f}], 1024, 0) = 1
read(31, "\1\0\0\0\0\0\0\0", 1024) = 8
futex(0x56102bf95088, FUTEX_WAKE_PRIVATE, 1) = 1
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(48, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
ppoll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=47, events=POLLIN}, {fd=48, events=POLLIN}], 4, {tv_sec=0, tv_nsec=0}, NULL, 8) = 0 (Timeout)
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
recvmsg(48, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
ppoll([{fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=47, events=POLLIN}, {fd=48, events=POLLIN}], 4, {tv_sec=29, tv_nsec=268000000}, NULL, 8) = 1 ([{fd=13, revents=POLLIN}], left {tv_sec=24, tv_nsec=273539915})
recvmsg(47, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
But nothing really jumps out to me. There is a lot of recvmsg
returning EAGAIN
which continues once logic actually loads.