drivers/scsi/sd.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 8802e48..eb228f9 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -2238,6 +2238,10 @@ static void sd_probe_async(void *data, async_cookie_t cookie) sd_revalidate_disk(gd); + /* announce the device */ + dev_set_uevent_suppress(&sdkp->dev, 0); + kobject_uevent(&sdkp->dev.kobj, KOBJ_ADD); + sd_printk(KERN_NOTICE, sdkp, "Attached SCSI %sdisk\n", sdp->removable ? "removable " : ""); put_device(&sdkp->dev); @@ -2321,6 +2325,8 @@ static int sd_probe(struct device *dev) sdkp->dev.class = &sd_disk_class; dev_set_name(&sdkp->dev, dev_name(&sdp->sdev_gendev)); + /* suppress uevent until probing is complete */ + dev_set_uevent_suppress(&sdkp->dev, 1); if (device_add(&sdkp->dev)) goto out_free_index;