On Mon, Apr 14, 2014 at 04:43:09PM +0200, Martin Kletzander wrote: > diff --git a/src/util/virnodesuspend.c b/src/util/virnodesuspend.c > index 59b84ef..60b86ee 100644 > --- a/src/util/virnodesuspend.c > +++ b/src/util/virnodesuspend.c > @@ -267,7 +268,14 @@ virNodeSuspendSupportsTargetPMUtils(unsigned int target, bool *supported) > virCommandFree(cmd); > return ret; > } > -#endif > +#else /* ! WITH_PM_UTILS */ > +static int > +virNodeSuspendSupportsTargetPMUtils(unsigned int target ATTRIBUTE_UNUSED, > + bool *supported ATTRIBUTE_UNUSED) > +{ > + return -2; > +} > +#endif /* ! WITH_PM_UTILS */ > > static int > virNodeSuspendSupportsTargetSystemd(unsigned int target, bool *supported) > @@ -313,10 +321,16 @@ virNodeSuspendSupportsTarget(unsigned int target, bool *supported) > int ret; > > ret = virNodeSuspendSupportsTargetSystemd(target, supported); > -#ifdef WITH_PM_UTILS > - if (ret < 0) > + > + /* If just unavailable, try other options */ > + if (ret == -2) > ret = virNodeSuspendSupportsTargetPMUtils(target, supported); > -#endif > + > + /* If still unavailable, then report error */ > + if (ret == -2) { > + virReportError(VIR_ERR_INTERNAL_ERROR, "%s", > + _("Cannot probe for supported suspend types")); I think we shuld set 'ret = -1' at this point, since the caller of this API doesn't need to know/care about this -1 vs -2 distinction. > + } > > return ret; > } > diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c > index e9ca564..e67956f 100644 > --- a/src/util/virsystemd.c > +++ b/src/util/virsystemd.c > @@ -326,6 +326,7 @@ virSystemdNotifyStartup(void) > #endif > } > > +#ifdef WITH_SYSTEMD_DAEMON > static int > virSystemdPMSupportTarget(const char *methodName, bool *result) > { > @@ -369,6 +370,14 @@ virSystemdPMSupportTarget(const char *methodName, bool *result) > > return ret; > } > +#else /* ! WITH_SYSTEMD_DAEMON */ > +static int > +virSystemdPMSupportTarget(const char *methodName ATTRIBUTE_UNUSED, > + bool *result ATTRIBUTE_UNUSED) > +{ > + return -2; > +} > +#endif /* ! WITH_SYSTEMD_DAEMON */ > > int virSystemdCanSuspend(bool *result) > { ACK with the small change above Regards, Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list