On 3/27/20 8:45 AM, Cornelia Huck wrote: > The common I/O layer delays the ADD uevent for subchannels and > delegates generating this uevent to the individual subchannel > drivers. The vfio-ccw I/O subchannel driver, however, did not > do that, and will not generate an ADD uevent for subchannels > that had not been bound to a different driver (or none at all, > which also triggers the uevent). > > Generate the ADD uevent at the end of the probe function if > uevents were still suppressed for the device. > > Fixes: 63f1934d562d ("vfio: ccw: basic implementation for vfio_ccw driver") > Signed-off-by: Cornelia Huck <cohuck@xxxxxxxxxx> This seems to line up with the other drivers. Reviewed-by: Eric Farman <farman@xxxxxxxxxxxxx> > --- > drivers/s390/cio/vfio_ccw_drv.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/s390/cio/vfio_ccw_drv.c b/drivers/s390/cio/vfio_ccw_drv.c > index e401a3d0aa57..339a6bc0339b 100644 > --- a/drivers/s390/cio/vfio_ccw_drv.c > +++ b/drivers/s390/cio/vfio_ccw_drv.c > @@ -167,6 +167,11 @@ static int vfio_ccw_sch_probe(struct subchannel *sch) > if (ret) > goto out_disable; > > + if (dev_get_uevent_suppress(&sch->dev)) { > + dev_set_uevent_suppress(&sch->dev, 0); > + kobject_uevent(&sch->dev.kobj, KOBJ_ADD); > + } > + > VFIO_CCW_MSG_EVENT(4, "bound to subchannel %x.%x.%04x\n", > sch->schid.cssid, sch->schid.ssid, > sch->schid.sch_no); >