Message ID | 20200908145347.2992670-17-hch@lst.de |
---|---|
State | Not Applicable |
Delegated to: | David Miller |
Headers | show |
Series | [01/19] block: add a bdev_check_media_change helper | expand |
On 9/8/20 4:53 PM, Christoph Hellwig wrote: > Switch to use bdev_check_media_change instead of check_disk_change and > call sd_revalidate_disk manually. As sd also calls sd_revalidate_disk > manually during probe and open, , the extra call into ->revalidate_disk > from bdev_disk_changed is not required either, so stop wiring up the > method. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> > --- > drivers/scsi/sd.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > Reviewed-by: Hannes Reinecke <hare@suse.de> Cheers, Hannes
On 08.09.2020 17:53, Christoph Hellwig wrote: > Switch to use bdev_check_media_change instead of check_disk_change and > call sd_revalidate_disk manually. As sd also calls sd_revalidate_disk > manually during probe and open, , the extra call into ->revalidate_disk Too many commas. :-) > from bdev_disk_changed is not required either, so stop wiring up the > method. > > Signed-off-by: Christoph Hellwig <hch@lst.de> > Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> [...] MBR, Sergei
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 2bec8cd526164d..d020639c28c6ca 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -1381,8 +1381,10 @@ static int sd_open(struct block_device *bdev, fmode_t mode) if (!scsi_block_when_processing_errors(sdev)) goto error_out; - if (sdev->removable || sdkp->write_prot) - check_disk_change(bdev); + if (sdev->removable || sdkp->write_prot) { + if (bdev_check_media_change(bdev)) + sd_revalidate_disk(bdev->bd_disk); + } /* * If the drive is empty, just let the open fail. @@ -1843,7 +1845,6 @@ static const struct block_device_operations sd_fops = { .compat_ioctl = sd_compat_ioctl, #endif .check_events = sd_check_events, - .revalidate_disk = sd_revalidate_disk, .unlock_native_capacity = sd_unlock_native_capacity, .report_zones = sd_zbc_report_zones, .pr_ops = &sd_pr_ops,