[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6cccd58c-f962-ac4b-bfb4-08df8432f4e5@oracle.com>
Date: Tue, 28 Aug 2018 12:53:56 -0400
From: Boris Ostrovsky <boris.ostrovsky@...cle.com>
To: Joe Jin <joe.jin@...cle.com>, Juergen Gross <jgross@...e.com>,
Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
Cc: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"xen-devel@...ts.xenproject.org" <xen-devel@...ts.xenproject.org>
Subject: Re: [PATCH V2] xen: export device state to sysfs
On 08/28/2018 10:56 AM, Joe Jin wrote:
> Export device state to sysfs to allow for easier get device state.
>
> Signed-off-by: Joe Jin <joe.jin@...cle.com>
> Cc: Boris Ostrovsky <boris.ostrovsky@...cle.com>
> Cc: Juergen Gross <jgross@...e.com>
> Cc: Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
> ---
> Documentation/ABI/stable/sysfs-bus-xen-backend | 9 +++++++++
> drivers/xen/xenbus/xenbus_probe.c | 9 +++++++++
> 2 files changed, 18 insertions(+)
>
> diff --git a/Documentation/ABI/stable/sysfs-bus-xen-backend b/Documentation/ABI/stable/sysfs-bus-xen-backend
> index 3d5951c8bf5f..e8b60bd766f7 100644
> --- a/Documentation/ABI/stable/sysfs-bus-xen-backend
Won't this show up in the frontend as well?
-boris
> +++ b/Documentation/ABI/stable/sysfs-bus-xen-backend
> @@ -73,3 +73,12 @@ KernelVersion: 3.0
> Contact: Konrad Rzeszutek Wilk <konrad.wilk@...cle.com>
> Description:
> Number of sectors written by the frontend.
> +
> +What: /sys/bus/xen-backend/devices/*/state
> +Date: August 2018
> +KernelVersion: 4.19
> +Contact: Joe Jin <joe.jin@...cle.com>
> +Description:
> + The state of the device. One of: 'Unknown',
> + 'Initialising', 'Initialised', 'Connected', 'Closing',
> + 'Closed', 'Reconfiguring', 'Reconfigured'.
> diff --git a/drivers/xen/xenbus/xenbus_probe.c b/drivers/xen/xenbus/xenbus_probe.c
> index f2088838f690..5b471889d723 100644
> --- a/drivers/xen/xenbus/xenbus_probe.c
> +++ b/drivers/xen/xenbus/xenbus_probe.c
> @@ -402,10 +402,19 @@ static ssize_t modalias_show(struct device *dev,
> }
> static DEVICE_ATTR_RO(modalias);
>
> +static ssize_t state_show(struct device *dev,
> + struct device_attribute *attr, char *buf)
> +{
> + return sprintf(buf, "%s\n",
> + xenbus_strstate(to_xenbus_device(dev)->state));
> +}
> +static DEVICE_ATTR_RO(state);
> +
> static struct attribute *xenbus_dev_attrs[] = {
> &dev_attr_nodename.attr,
> &dev_attr_devtype.attr,
> &dev_attr_modalias.attr,
> + &dev_attr_state.attr,
> NULL,
> };
>
Powered by blists - more mailing lists