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....@oracle.com> > Cc: Boris Ostrovsky <boris.ostrov...@oracle.com> > Cc: Juergen Gross <jgr...@suse.com> > Cc: Konrad Rzeszutek Wilk <konrad.w...@oracle.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.w...@oracle.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....@oracle.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, > }; >