aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/drivers/scsi/sd.c
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2024-05-31 09:48:00 +0200
committerJens Axboe <axboe@kernel.dk>2024-06-14 10:19:44 -0600
commitb3491b0db165c0cbe25874da66d97652c03db654 (patch)
tree493b32491500c4db0c906f206e199a8ad1d1e74e /drivers/scsi/sd.c
parentblock: take io_opt and io_min into account for max_sectors (diff)
downloadwireguard-linux-b3491b0db165c0cbe25874da66d97652c03db654.tar.xz
wireguard-linux-b3491b0db165c0cbe25874da66d97652c03db654.zip
sd: simplify the ZBC case in provisioning_mode_store
Don't reset the discard settings to no-op over and over when a user writes to the provisioning attribute as that is already the default mode for ZBC devices. In hindsight we should have made writing to the attribute fail for ZBC devices, but the code has probably been around for far too long to change this now. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Damien Le Moal <dlemoal@kernel.org> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Link: https://lore.kernel.org/r/20240531074837.1648501-6-hch@lst.de Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'drivers/scsi/sd.c')
-rw-r--r--drivers/scsi/sd.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index 3dff9150ce11..83aa17fea39d 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -461,14 +461,13 @@ provisioning_mode_store(struct device *dev, struct device_attribute *attr,
if (!capable(CAP_SYS_ADMIN))
return -EACCES;
- if (sd_is_zoned(sdkp)) {
- sd_config_discard(sdkp, SD_LBP_DISABLE);
- return count;
- }
-
if (sdp->type != TYPE_DISK)
return -EINVAL;
+ /* ignore the provisioning mode for ZBC devices */
+ if (sd_is_zoned(sdkp))
+ return count;
+
mode = sysfs_match_string(lbp_mode, buf);
if (mode < 0)
return -EINVAL;