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

event manager doesn't "connect"(?) unless uzbl-browser is being verbose #393

Closed
musteresel opened this issue Oct 27, 2017 · 8 comments
Closed

Comments

@musteresel
Copy link
Contributor

musteresel commented Oct 27, 2017

When I just run uzbl-browser, then I get neither [Cmd] nor [Ins] as mode indicator but []. The FAQ says that this could be due to a non running connected event manager. I'm running on NixOS, where there's often the issue that runtime dependencies are not found due to funny paths (/nix/store/....foobar/bin/baz), so I tried running uzbl-browser -v in the hope to see which path it's trying to find the event manager. I didn't get any useful output, but noticed that now my mode indicator showed [Cmd] just fine.

So, after some further investigation as for how reproducible this behavior is, I come to the conclusion: For some reason my event manager doesn't seem to start (or "connect"?) unless I either print verbose information (-v), event information (-p) or both. If I'd need to guess I'd say that this might be some kind of race condition, where "slowing down" the start of uzbl-browser allows the event manager to catch up? Though throttling through cpulimit doesn't work ...

output of uzbl-core --bug-info:

Commit: UNKNOWN
GTK compile: 2.24.31
GTK run: 2.24.31
WebKit compile: 2.4.11
WebKit run: 2.4.11
WebKit2: 0
libsoup compile: 2.59.90
libsoup run: 2.59.90

I guess that isn't too helpful, so I digged into my distros package / build system to find that it's supposedly version v0.9.0, downloaded from https://github.com/uzbl/uzbl/archive/v0.9.0.tar.gz. I'm a bit confused, though, because the checksum doesn't match what I was expecting. Mine:

# sha256sum /nix/store/xk78nbbfq6dq1ca1bv7fbk9gaglsdayh-uzbl-v0.9.0.tar.gz
931cf0bd91ebf140ddb0659d8ee547826bfa5d8235b618552eb5b951cc865347  /nix/store/xk78nbbfq6dq1ca1bv7fbk9gaglsdayh-uzbl-v0.9.0.tar.gz

Expected as far as package manager is concerned:

sha256 = "0iskhv653fdm5raiidimh9fzlsw28zjqx7b5n3fl1wgbj6yz074k";

Is there a specific website which shows the problem?

No, happens on every page.

@musteresel musteresel changed the title event manager doesn't start unless uzbl-browser is being verbose event manager doesn't "connect"(?) unless uzbl-browser is being verbose Oct 27, 2017
@musteresel
Copy link
Contributor Author

Output of ps shows the event manager just starts nicely whether running with -v / -vp or without. It's started with -a, so it should automatically close when I close the uzbl instance, which it also does. I still have [] as mode indicator, though.

@mathstuf
Copy link
Member

This may be a race condition. Could you inject strace -o uzbl-core.log into uzbl-browser where it runs uzbl-core? I suspect it is trying the socket before it exists and making it print delays it just enough to make it happy.

@mathstuf
Copy link
Member

Oh, and upload the uzbl-core.log. It's fine to trim it around the socket opening spot; your cookie contents may be visible in the cookie loading section.

@musteresel
Copy link
Contributor Author

Ok, here are the hopefully relevant parts of the log. First, opening the socket:

17:16:34.118816 close(9)                = 0
17:16:34.118858 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.118883 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119081 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119101 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119122 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119345 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119423 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119541 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119563 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119582 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119759 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119779 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119831 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119862 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.119908 socket(AF_UNIX, SOCK_STREAM, 0) = 9
17:16:34.119941 connect(9, {sa_family=AF_UNIX, sun_path="/home/musteresel/.cache/uzbl/event_daemon"}, 110) = 0
17:16:34.119979 fstat(9, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
17:16:34.120007 fcntl(9, F_GETFL)       = 0x2 (flags O_RDWR)
17:16:34.120035 fcntl(9, F_GETFL)       = 0x2 (flags O_RDWR)
17:16:34.120059 fcntl(9, F_SETFL, O_RDONLY|O_NONBLOCK) = 0
17:16:34.120085 write(7, "\1\0\0\0\0\0\0\0", 8) = 8
17:16:34.120123 write(7, "\1\0\0\0\0\0\0\0", 8) = 8
17:16:34.120151 futex(0x7f1de40008c0, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:34.120189 getpid()                = 14833
17:16:34.120225 write(9, "EVENT [14833] INSTANCE_START 14833\n", 35) = 35
17:16:34.120277 write(9, "EVENT [14833] BUILTINS [\"back\",\"forward\",\"reload\",\"stop\",\"uri\",\"download\",\"load\",\"frame\",\"cookie\",\"scroll\",\"zoom\",\"hardcopy\",\"ge"..., 429) = 429
17:16:34.120319 write(9, "EVENT [14833] VARIABLE_SET status_format str '<b>@[@TITLE]@</b> - @[@uri]@ - <span foreground=\"#bbb\">@NAME</span>'\n", 115) = 115
17:16:34.120358 write(9, "EVENT [14833] VARIABLE_SET show_status int '1'\n", 47) = 47
17:16:34.120469 write(9, "EVENT [14833] VARIABLE_SET title_format_long str '@keycmd @TITLE - Uzbl browser <@NAME> > @SELECTED_URI'\n", 105) = 105
17:16:34.120532 write(9, "EVENT [14833] VARIABLE_SET title_format_short str '@TITLE - Uzbl browser <@NAME>'\n", 82) = 82
17:16:34.120594 write(9, "EVENT [14833] VARIABLE_SET max_conns int '100'\n", 47) = 47
17:16:34.120651 write(9, "EVENT [14833] VARIABLE_SET max_conns_host int '6'\n", 50) = 50
17:16:34.120725 write(9, "EVENT [14833] VARIABLE_SET shell_cmd str '/bin/sh -c'\n", 54) = 54
17:16:34.120785 write(9, "EVENT [14833] VARIABLE_SET maintain_history int '1'\n", 52) = 52
17:16:34.120838 write(9, "EVENT [14833] VARIABLE_SET forward_keys int '1'\n", 48) = 48
17:16:34.120893 write(9, "EVENT [14833] VARIABLE_SET zoom_text_only int '0'\n", 50) = 50
17:16:34.120951 lstat("/home/musteresel/.config/uzbl/config", {st_mode=S_IFREG|0444, st_size=22717, ...}) = 0
17:16:34.120989 open("/home/musteresel/.config/uzbl/config", O_RDONLY) = 10
17:16:34.121022 fstat(10, {st_mode=S_IFREG|0444, st_size=22717, ...}) = 0
17:16:34.121053 read(10, "# Example uzbl config. All settings are optional. You can use uzbl without\n# any config at all (but it won't do much).\n\n# === Co"..., 1024) = 1024

Then, something I noticed whilst scrolling over the log:

17:16:34.180248 write(9, "EVENT [14833] MODE_BIND command  ze  = spawn /home/musteresel/.local/share/uzbl:/nix/store/cgsw7h8g4f3dd65przzq47wcipmij8wx-gset"..., 2047) = 2047
17:16:34.180284 write(9, "bvpdl0qrqz5q49f3pli1n3k-graphite2-1.3.6/share/uzbl:/nix/store/2m6yh7hfqrrx4sbmf33z15wrjg79xgrf-icu4c-58.2-dev/share/uzbl:/nix/st"..., 2047) = 2047
17:16:34.180315 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 634) = 634
17:16:34.180371 write(9, "EVENT [14833] MODE_BIND command  zn  = spawn /home/musteresel/.local/share/uzbl:/nix/store/cgsw7h8g4f3dd65przzq47wcipmij8wx-gset"..., 2047) = 2047
17:16:34.180403 write(9, "bvpdl0qrqz5q49f3pli1n3k-graphite2-1.3.6/share/uzbl:/nix/store/2m6yh7hfqrrx4sbmf33z15wrjg79xgrf-icu4c-58.2-dev/share/uzbl:/nix/st"..., 2047) = 2047
17:16:34.180434 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 633) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180490 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180524 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180585 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180618 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180656 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180693 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180729 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180761 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180796 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180828 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180862 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180894 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180929 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180960 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.180994 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181025 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181061 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181093 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181127 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181159 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181194 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181230 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181264 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181295 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181330 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181361 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181396 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181427 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181461 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181492 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181526 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181557 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181593 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181624 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181738 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181775 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181836 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181870 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181902 read(10, "_  = @preset load %s\n@cbind  gd<\"preset del\":>_    = @preset del %s\n# This doesn't work right now.\n#@cbind  gli                 "..., 1024) = 1024
17:16:34.181946 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.181988 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182024 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182055 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182096 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182128 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182165 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182197 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182232 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182264 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182299 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182330 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182368 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182400 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182438 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182469 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182567 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182603 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182662 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182706 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182802 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182843 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182903 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.182936 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183025 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183059 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183118 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183150 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183185 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183216 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183249 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183279 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183313 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183345 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183378 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183410 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183444 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183475 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183509 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183539 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183578 read(10, "      Ins\n@insert   forward_keys        1\n@insert   keycmd_events       0\n@insert   modcmd_updates      0\n\n# Multi-stage-binding"..., 1024) = 1024
17:16:34.183622 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183653 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183694 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183726 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183760 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183791 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183825 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183856 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183892 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183924 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183959 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.183990 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184024 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184055 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184090 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184121 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184155 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184186 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184226 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184258 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184293 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184323 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184360 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184391 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184488 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184524 write(9, "tore/j7x385hrld2bscnfzpn0dq70c3svirps-cups-2.2.2-lib/share/uzbl:/nix/store/3640n6ppzm6bh43kyqn8svpzn8fmpvzs-cups-2.2.2/share/uzb"..., 2047) = -1 EAGAIN (Resource temporarily unavailable)
17:16:34.184588 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:34.184641 stat("/nix/store/32y2dfql2wm1bipqavvymyhm3n4alawd-glib-networking-2.50.0/lib/gio/modules/libgiognutls.so", {st_mode=S_IFREG|0555, st_size=111664, ...}) = 0
17:16:34.184741 open("/nix/store/32y2dfql2wm1bipqavvymyhm3n4alawd-glib-networking-2.50.0/lib/gio/modules/libgiognutls.so", O_RDONLY|O_CLOEXEC) = 13

Writes to the socket (fd 9) work after this part, again. Finally, where I press ZZ:

17:16:37.636199 write(9, "EVENT [14833] VARIABLE_SET keycmd str ''\n", 41) = 41
17:16:37.636399 write(9, "EVENT [14833] COMMAND_EXECUTED js 'page' 'string' ' if(0) \"#00BFFF\"; else \"#99FF66\"; '\n", 87) = 87
17:16:37.636487 write(9, "\n", 1)       = 1
17:16:37.636522 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:37.636561 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
17:16:37.637013 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
17:16:37.637055 writev(3, [{iov_base="5\30\4\0^\0 \2\37\0 \2D\5\17\0\213\4\6\0_\0 \2^\0 \2*\0\0\0\0\4\0\0\1\0\0\0\213\32\7\0\1\0\0\0_\0 \002000000\377\377\0\0\0\0D\5\17\0;\3\5\0&\0 \2\0\0\0\0\0\0\0\0D\5\17\0F\0\5\0^\0 \2&\0 \2\0\0\235\376D\5r\0018\0\4\0&\0 \2\0\0\10\0\0\0\0\0\213\32\7\0"..., iov_len=680}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 680
17:16:37.637088 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:37.637131 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:37.637154 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1959) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.063373 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\2\35\350\1c\355\301\r\365\0\0\0\37\0 \2\0\0\0\0M\1\325\0D\1P\377\1\0\1\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.063441 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.063543 write(9, "EVENT [14833] KEY_PRESS '' 'Z'\n", 31) = 31
17:16:38.063607 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
17:16:38.063640 writev(3, [{iov_base="\22\0\7\0\37\0 \2r\1\0\0\6\0\0\0 \4\6\0\1\0\0\0c\355\301\r", iov_len=28}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 28
17:16:38.063690 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\351\1\37\0 \2r\1\0\0c\355\301\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.063760 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.063791 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
17:16:38.063825 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.063851 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.063876 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1532) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.133541 write(9, "EVENT [14833] VARIABLE_SET keycmd str 'Z<span underline=\"single\"> </span>'\n", 75) = 75
17:16:38.133697 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.133854 write(9, "EVENT [14833] COMMAND_EXECUTED js 'page' 'string' ' if(0) \"#00BFFF\"; else \"#99FF66\"; '\n", 87) = 87
17:16:38.133947 write(9, "\n", 1)       = 1
17:16:38.133986 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\3\35\351\1\251\355\301\r\365\0\0\0\37\0 \2\0\0\0\0M\1\325\0D\1P\377\1\0\1\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.134024 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.134052 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
17:16:38.134107 write(9, "EVENT [14833] KEY_RELEASE '' 'Z'\n", 33) = 33
17:16:38.134142 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.134170 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 0) = 0 (Timeout)
17:16:38.135135 access("/nix/store/rapfc90v4kfhw2p9zgqcr9yw5wda6z8h-dejavu-fonts-2.37/share/fonts/truetype/DejaVuSansMono.ttf", R_OK) = 0
17:16:38.135684 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
17:16:38.135728 writev(3, [{iov_base="5\30\4\0`\0 \2\37\0 \2D\5\17\0\213\4\6\0a\0 \2`\0 \2*\0\0\0\0\4\0\0\1\0\0\0\213\32\7\0\1\0\0\0a\0 \002000000\377\377\0\0\0\0D\5\17\0;\3\5\0&\0 \2\0\0\0\0\0\0\0\0D\5\17\0F\0\5\0`\0 \2&\0 \2\0\0\235\376D\5r\0018\0\4\0&\0 \2\0\0\10\0\0\0\0\0\213\32\7\0"..., iov_len=1184}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 1184
17:16:38.135773 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.135814 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.135838 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1460) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.509028 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\2\35\7\2 \357\301\r\365\0\0\0\37\0 \2\0\0\0\0M\1\325\0D\1P\377\1\0\1\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.509096 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.509196 write(9, "EVENT [14833] KEY_PRESS '' 'Z'\n", 31) = 31
17:16:38.509258 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLOUT}])
17:16:38.509290 writev(3, [{iov_base="\22\0\7\0\37\0 \2r\1\0\0\6\0\0\0 \4\6\0\1\0\0\0 \357\301\r", iov_len=28}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 28
17:16:38.509324 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.509376 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1087) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.509419 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0\10\2\37\0 \2r\1\0\0 \357\301\r\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.509451 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.509482 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.509508 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.509532 poll([{fd=3, events=POLLIN}, {fd=4, events=POLLIN}, {fd=10, events=POLLIN}], 3, 1087) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.580563 write(9, "EVENT [14833] FOCUS_LOST\n", 25) = 25
17:16:38.580721 write(4, "\1\0\0\0\0\0\0\0", 8) = 8
17:16:38.581263 write(4, "\1\0\0\0\0\0\0\0", 8) = 8
17:16:38.581317 futex(0x246e180, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.581348 write(7, "\1\0\0\0\0\0\0\0", 8) = 8
17:16:38.581410 futex(0x7f1de40008d0, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.581447 futex(0x7f1de40008c0, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:38.581521 write(9, "EVENT [14833] COMMAND_EXECUTED exit \n", 37) = 37
17:16:38.581588 write(9, "\n", 1)       = 1
17:16:38.581639 poll([{fd=3, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=3, revents=POLLIN|POLLOUT}])
17:16:38.581697 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\3\35\10\2h\357\301\r\365\0\0\0\37\0 \2\0\0\0\0M\1\325\0D\1P\377\1\0\1\0", iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 32
17:16:38.581753 writev(3, [{iov_base="\n\0\2\0\37\0 \2\31\0\v\0\365\0\0\0\0\0\30\0\22\0\0\0\365\0\0\0\37\0 \2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0<0\2\0#\0 \2<\0\2\0$\0 \2<\3\2\0'\0 \2<\0\2\0(\0 \2<\5\2\0&\0 \2<\0\2\0+\0 \2<\0\2\0,\0 \2<\0\2\0-\0 \2<\0\2\0.\0 \2<\32\2\0"..., iov_len=304}, {iov_base=NULL, iov_len=0}, {iov_base="", iov_len=0}], 3) = 304
17:16:38.581799 poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.581908 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\22\0\t\2\37\0 \2\37\0 \2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\n\3\t\2\37\0 \2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\21\0&\2\37\0 \2\37\0 \2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\34\0&\2\37\0 \2r\1\0\0i\357\301\r\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 320
17:16:38.581966 poll([{fd=3, events=POLLIN}], 1, -1) = 1 ([{fd=3, revents=POLLIN}])
17:16:38.581996 recvmsg(3, {msg_name=NULL, msg_namelen=0, msg_iov=[{iov_base="\34\0&\2\37\0 \2}\1\0\0i\357\301\r\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\34\0&\2\37\0 \2[\2\0\0i\357\301\r\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\34\0&\2\37\0 \2g\1\0\0i\357\301\r\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\34\0&\2\37\0 \2h\1\0\0i\357\301\r\1\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., iov_len=4096}], msg_iovlen=1, msg_controllen=0, msg_flags=0}, 0) = 544
17:16:38.582052 recvmsg(3, {msg_namelen=0}, 0) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.583084 --- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
17:16:38.584065 madvise(0x7f1ddaffe000, 0, MADV_DONTNEED) = 0
17:16:38.584101 mprotect(0x7f1ddaffe000, 0, PROT_NONE) = 0
17:16:38.584120 munmap(0x7f1ddabfe000, 4194304) = 0
17:16:38.584208 futex(0x7f1e53204030, FUTEX_WAKE_PRIVATE, 2147483647) = 3
17:16:38.584242 futex(0x7f1e53203fe0, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:38.584278 futex(0x7f1de89209d0, FUTEX_WAIT, 14844, NULL) = 0
17:16:38.584421 futex(0x7f1ddbfff9d0, FUTEX_WAIT, 14845, NULL) = 0
17:16:38.584526 futex(0x7f1e531fa278, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:38.584582 futex(0x7f1e531fa228, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:38.584767 munmap(0x7f1de8101000, 126976) = 0
17:16:38.584925 munmap(0x7f1de80e2000, 126976) = 0
17:16:38.585010 munmap(0x7f1de8009000, 126976) = 0
17:16:38.585124 futex(0x7f1de91219d0, FUTEX_WAIT, 14843, NULL) = -1 EAGAIN (Resource temporarily unavailable)
17:16:38.585231 getpid()                = 14833
17:16:38.585362 write(9, "EVENT [14833] INSTANCE_EXIT 14833\n", 34) = 34
17:16:38.585539 unlink("/run/user/1000/uzbl/uzbl_fifo_14833") = 0
17:16:38.585617 unlink("/run/user/1000/uzbl/uzbl_socket_14833") = 0
17:16:38.585666 munmap(0x7f1de8120000, 8392704) = 0
17:16:38.585827 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.586023 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.589129 futex(0x7f1e4e1cfe08, FUTEX_WAKE_PRIVATE, 2147483647) = 0
17:16:38.589242 futex(0x7f1e531e8ce8, FUTEX_WAKE_PRIVATE, 1) = 1
17:16:38.589271 futex(0x7f1df9f829d0, FUTEX_WAIT, 14839, NULL) = 0
17:16:38.589458 munmap(0x7f1ddb7ff000, 8392704) = 0
17:16:38.589574 munmap(0x7f1dda99e000, 2105360) = 0
17:16:38.589606 munmap(0x7f1dda6f5000, 2787608) = 0
17:16:38.589680 munmap(0x7f1dda2dc000, 2145496) = 0
17:16:38.589743 munmap(0x7f1dda0d6000, 2117656) = 0
17:16:38.589769 munmap(0x7f1dd9e64000, 2561592) = 0
17:16:38.589796 munmap(0x7f1dda4e8000, 2146960) = 0
17:16:38.590216 exit_group(0)           = ?
17:16:38.594739 +++ exited with 0 +++

@musteresel
Copy link
Contributor Author

To me this looks a bit like some missed error handling when writing (possibly long) event messages over the socket. That handling of EAGAIN doesn't seem quite right, for me.

@musteresel
Copy link
Contributor Author

I found the issue and am working on a patch.

@musteresel
Copy link
Contributor Author

musteresel commented Dec 17, 2017

The socket is opened in non-blocking mode:

17:16:34.120059 fcntl(9, F_SETFL, O_RDONLY|O_NONBLOCK) = 0

Thus when writing a lot of data (the long path names) the socket write call returns these EAGAIN errors until the socket is ready to send data again. In the code on v0.9.0 however it only checks for the return value G_IO_STATUS_ERROR of g_io_channel_write_charsand treats everything else as "normal".

I fixed the affected function in #400

@musteresel
Copy link
Contributor Author

#401 fixes a source for issues like this in current master (or v0.9.1).

(The earlier pull request is a patch for v0.9.0)

@keis keis closed this as completed Jan 31, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants