>Could you be more specific? Specifically, could you share >/var/log/messages for the parts related to Wireguard?
root@guixtest ~# cat /var/log/messages | grep -i wireguardJun 8 18:20:07 localhost vmunix: [ 6.330271] wireguard: WireGuard 1.0.0 loaded. See www.wireguard.com for information. Jun 8 18:20:07 localhost vmunix: [ 6.330276] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <ja...@zx2c4.com>. All Rights Reserved. >However, the standard >service constructors/destructors no longer block, and shepherd can serve >multiple clients concurrently. I don't know, I guess wireguard uses "non-standard" constructors. On Thu, Jun 2, 2022 at 8:38 AM Ludovic Courtès <l...@gnu.org> wrote: > > Hi Nathan, > > Nathan Dehnel <ncdeh...@gmail.com> skribis: > > > Just tested and Shepherd 0.9 does not fix this issue. > > Could you be more specific? Specifically, could you share > /var/log/messages for the parts related to Wireguard? > > > On Mon, Jan 17, 2022 at 7:48 AM Ludovic Courtès <l...@gnu.org> wrote: > > [...] > > >> One command sent to shepherd by ‘herd …’ must have completed before the > >> next one is processed. > >> > >> You can experience it like this: > >> > >> sudo herd eval root '(sleep 3)' & echo status && sudo herd status > >> > >> Here the first ‘herd’ command has shepherd block for 3 seconds, so the > >> second ‘herd’ command won’t print anything until 3 seconds have passed. > > This is actually still the case with 0.9, because here we’re calling > (@ (guile) sleep), which blocks. So… not a good example. > > The short story is: it is still possible to write code that blocks > shepherd, as with the ‘sleep’ example above. However, the standard > service constructors/destructors no longer block, and shepherd can serve > multiple clients concurrently. > > Ludo’.