xen/manage: correct return value check on xenbus_scanf()
authorJan Beulich <JBeulich@suse.com>
Fri, 3 Feb 2017 08:54:05 +0000 (01:54 -0700)
committerBoris Ostrovsky <boris.ostrovsky@oracle.com>
Fri, 3 Feb 2017 16:26:40 +0000 (11:26 -0500)
A negative return value indicates an error; in fact the function at
present won't ever return zero.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Juergen Gross <jgross@suse.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
drivers/xen/manage.c

index 26e5e8507f031f3118229f5164286160d3bcece6..357a8db859c9889755099fe406ecada93e94f220 100644 (file)
@@ -277,7 +277,7 @@ static void sysrq_handler(struct xenbus_watch *watch, const char **vec,
        err = xenbus_transaction_start(&xbt);
        if (err)
                return;
-       if (!xenbus_scanf(xbt, "control", "sysrq", "%c", &sysrq_key)) {
+       if (xenbus_scanf(xbt, "control", "sysrq", "%c", &sysrq_key) < 0) {
                pr_err("Unable to read sysrq code in control/sysrq\n");
                xenbus_transaction_end(xbt, 1);
                return;