diff options
Diffstat (limited to 'drivers/scsi/sd.c')
-rw-r--r-- | drivers/scsi/sd.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 5ba5c2a9e8e9..6f0a4c612b3b 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c | |||
@@ -65,6 +65,7 @@ | |||
65 | #include <scsi/scsicam.h> | 65 | #include <scsi/scsicam.h> |
66 | 66 | ||
67 | #include "sd.h" | 67 | #include "sd.h" |
68 | #include "scsi_priv.h" | ||
68 | #include "scsi_logging.h" | 69 | #include "scsi_logging.h" |
69 | 70 | ||
70 | MODULE_AUTHOR("Eric Youngdale"); | 71 | MODULE_AUTHOR("Eric Youngdale"); |
@@ -2722,7 +2723,7 @@ static int sd_probe(struct device *dev) | |||
2722 | dev_set_drvdata(dev, sdkp); | 2723 | dev_set_drvdata(dev, sdkp); |
2723 | 2724 | ||
2724 | get_device(&sdkp->dev); /* prevent release before async_schedule */ | 2725 | get_device(&sdkp->dev); /* prevent release before async_schedule */ |
2725 | async_schedule(sd_probe_async, sdkp); | 2726 | async_schedule_domain(sd_probe_async, sdkp, &scsi_sd_probe_domain); |
2726 | 2727 | ||
2727 | return 0; | 2728 | return 0; |
2728 | 2729 | ||
@@ -2756,7 +2757,7 @@ static int sd_remove(struct device *dev) | |||
2756 | sdkp = dev_get_drvdata(dev); | 2757 | sdkp = dev_get_drvdata(dev); |
2757 | scsi_autopm_get_device(sdkp->device); | 2758 | scsi_autopm_get_device(sdkp->device); |
2758 | 2759 | ||
2759 | async_synchronize_full(); | 2760 | async_synchronize_full_domain(&scsi_sd_probe_domain); |
2760 | blk_queue_prep_rq(sdkp->device->request_queue, scsi_prep_fn); | 2761 | blk_queue_prep_rq(sdkp->device->request_queue, scsi_prep_fn); |
2761 | blk_queue_unprep_rq(sdkp->device->request_queue, NULL); | 2762 | blk_queue_unprep_rq(sdkp->device->request_queue, NULL); |
2762 | device_del(&sdkp->dev); | 2763 | device_del(&sdkp->dev); |