On Wed, Feb 20, 2019 at 01:34:15PM +0100, Andrea Bolognani wrote: > On Tue, 2019-02-19 at 16:58 +0000, Daniel P. Berrangé wrote: > > On Tue, Feb 19, 2019 at 05:52:31PM +0100, Andrea Bolognani wrote: > [...] > > > @@ -337,8 +337,12 @@ virFileWrapperFdClose(virFileWrapperFdPtr wfd) > > > > > > ret = virCommandWait(wfd->cmd, NULL); > > > > > > + /* If the command used to process IO has produced errors, it's fair > > > + * to assume those will be more relevant to the user than whatever > > > + * eg. QEMU can figure out on its own, so it's okay if we end up > > > + * discarding an existing error */ > > > if (wfd->err_msg && *wfd->err_msg) > > > - VIR_WARN("iohelper reports: %s", wfd->err_msg); > > > + virReportError(VIR_ERR_OPERATION_FAILED, "%s", wfd->err_msg); > > > > ret needs to be set to -1 in this case > > I expect that a command who produced output on stderr also exited > with a non-zero return code, but explicitly erroring out if the > former condition is detected can't possibly hurt I guess. The alternative is to change the conditional to if (ret != 0 && wfd->err_msg && *wfd->err_msg) ... If we think there's a risk of the command printing stuff to stderr in a non-error scenario. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|