summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/sd_zbc.c
diff options
context:
space:
mode:
authorNiklas Cassel <niklas.cassel@wdc.com>2021-12-01 14:28:31 +0000
committerMartin K. Petersen <martin.petersen@oracle.com>2021-12-02 21:41:47 -0500
commitbf3f120fd61c42c2f4aed8995e5417776d788c37 (patch)
tree0b873f744eb5e01ed376aee84d372d863e257b16 /drivers/scsi/sd_zbc.c
parent13202ebf5f331ca83f5ab47eb90ca4ef5489ac80 (diff)
downloadlinux-bf3f120fd61c42c2f4aed8995e5417776d788c37.tar.gz
linux-bf3f120fd61c42c2f4aed8995e5417776d788c37.tar.bz2
linux-bf3f120fd61c42c2f4aed8995e5417776d788c37.zip
scsi: sd_zbc: Clean up sd_zbc_parse_report() setting of wp
Make sd_zbc_parse_report() use if/else when setting the write pointer, instead of setting it unconditionally and then conditionally updating it. Link: https://lore.kernel.org/r/20211201142821.64650-2-Niklas.Cassel@wdc.com Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> Signed-off-by: Niklas Cassel <niklas.cassel@wdc.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/sd_zbc.c')
-rw-r--r--drivers/scsi/sd_zbc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/sd_zbc.c b/drivers/scsi/sd_zbc.c
index 749c5e5a70c7..4735cc7f682c 100644
--- a/drivers/scsi/sd_zbc.c
+++ b/drivers/scsi/sd_zbc.c
@@ -61,9 +61,10 @@ static int sd_zbc_parse_report(struct scsi_disk *sdkp, u8 *buf,
zone.len = logical_to_sectors(sdp, get_unaligned_be64(&buf[8]));
zone.capacity = zone.len;
zone.start = logical_to_sectors(sdp, get_unaligned_be64(&buf[16]));
- zone.wp = logical_to_sectors(sdp, get_unaligned_be64(&buf[24]));
if (zone.cond == ZBC_ZONE_COND_FULL)
zone.wp = zone.start + zone.len;
+ else
+ zone.wp = logical_to_sectors(sdp, get_unaligned_be64(&buf[24]));
ret = cb(&zone, idx, data);
if (ret)