On Wed, Jun 21, 2023 at 14:32:24 +0100, Daniel P. Berrangé wrote: > All services are ordered after local-fs.target unless they have set > DefaultDependencies=no, which we do not do. > > https://gitlab.com/libvirt/libvirt/-/issues/489 > Signed-off-by: Daniel P. Berrangé <berrange@xxxxxxxxxx> > --- > src/ch/virtchd.service.in | 1 - > src/interface/virtinterfaced.service.in | 1 - > src/libxl/virtxend.service.in | 1 - > src/lxc/virtlxcd.service.in | 1 - > src/network/virtnetworkd.service.in | 1 - > src/node_device/virtnodedevd.service.in | 1 - > src/nwfilter/virtnwfilterd.service.in | 1 - > src/qemu/virtqemud.service.in | 1 - > src/remote/libvirtd.service.in | 1 - > src/remote/virtproxyd.service.in | 1 - > src/secret/virtsecretd.service.in | 1 - > src/storage/virtstoraged.service.in | 1 - > src/util/virstring.c | 6 ++++++ > src/vbox/virtvboxd.service.in | 1 - > src/vz/virtvzd.service.in | 1 - > 15 files changed, 6 insertions(+), 14 deletions(-) > diff --git a/src/util/virstring.c b/src/util/virstring.c > index 6b728ff047..e189b9de31 100644 > --- a/src/util/virstring.c > +++ b/src/util/virstring.c > @@ -50,6 +50,7 @@ virStrToLong_i(char const *s, char **end_ptr, int base, int *result) > > errno = 0; > val = g_ascii_strtoll(s, &p, base); > + g_assert(errno != EAGAIN); > err = (errno || (!end_ptr && *p) || p == s || (int) val != val); > if (end_ptr) > *end_ptr = p; > @@ -71,6 +72,7 @@ virStrToLong_ui(char const *s, char **end_ptr, int base, unsigned int *result) > > errno = 0; > val = g_ascii_strtoull(s, &p, base); > + g_assert(errno != EAGAIN); > > /* This one's tricky. We _want_ to allow "-1" as shorthand for > * UINT_MAX regardless of whether long is 32-bit or 64-bit. But > @@ -103,6 +105,7 @@ virStrToLong_uip(char const *s, char **end_ptr, int base, unsigned int *result) > > errno = 0; > val = g_ascii_strtoull(s, &p, base); > + g_assert(errno != EAGAIN); > err = (memchr(s, '-', p - s) || > errno || (!end_ptr && *p) || p == s || (unsigned int) val != val); > if (end_ptr) > @@ -160,6 +163,7 @@ virStrToLong_ulp(char const *s, char **end_ptr, int base, > > errno = 0; > val = g_ascii_strtoull(s, &p, base); > + g_assert(errno != EAGAIN); > err = (memchr(s, '-', p - s) || > errno || (!end_ptr && *p) || p == s || (unsigned long) val != val); > if (end_ptr) > @@ -202,6 +206,7 @@ virStrToLong_ull(char const *s, char **end_ptr, int base, > > errno = 0; > val = g_ascii_strtoull(s, &p, base); > + g_assert(errno != EAGAIN); > err = (errno || (!end_ptr && *p) || p == s); > if (end_ptr) > *end_ptr = p; > @@ -223,6 +228,7 @@ virStrToLong_ullp(char const *s, char **end_ptr, int base, > > errno = 0; > val = g_ascii_strtoull(s, &p, base); > + g_assert(errno != EAGAIN); > err = (memchr(s, '-', p - s) || > errno || (!end_ptr && *p) || p == s); > if (end_ptr) You've accidentally added some debugging code to this patch. For the systemd stuff: Reviewed-by: Peter Krempa <pkrempa@xxxxxxxxxx>