[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] xen: don't print error message in case of missing Xenstore entry



On 05/29/2017 05:13 AM, Juergen Gross wrote:
> When registering for the Xenstore watch of the node control/sysrq the
> handler will be called at once. Don't issue an error message if the
> Xenstore node isn't there, as it will be created only when an event
> is being triggered.
>
> Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
> ---
>  drivers/xen/manage.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/xen/manage.c b/drivers/xen/manage.c
> index c1ec8ee80924..7ddd0803da23 100644
> --- a/drivers/xen/manage.c
> +++ b/drivers/xen/manage.c
> @@ -277,8 +277,11 @@ static void sysrq_handler(struct xenbus_watch *watch, 
> const char *path,
>       err = xenbus_transaction_start(&xbt);
>       if (err)
>               return;
> -     if (xenbus_scanf(xbt, "control", "sysrq", "%c", &sysrq_key) < 0) {
> -             pr_err("Unable to read sysrq code in control/sysrq\n");
> +     err = xenbus_scanf(xbt, "control", "sysrq", "%c", &sysrq_key);
> +     if (err < 0) {
> +             if (err != -ENOENT)

Can we distinguish initialization invocation from actual watch firing?
E.g. '|| (system_state >= SYSTEM_RUNNING)'?

-boris

> +                     pr_err("Error %d reading sysrq code in control/sysrq\n",
> +                            err);
>               xenbus_transaction_end(xbt, 1);
>               return;
>       }


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.