scsi: sd_zbc: Fix variable type and bogus comment
commit f13cff6c25bd8986627365346d123312ee7baa78 upstream. Fix the description of sd_zbc_check_zone_size() to correctly explain that the returned value is a number of device blocks, not bytes. Additionally, the 32 bits "ret" variable used in this function may truncate the 64 bits zone_blocks variable value upon return. To fix this, change "ret" type to s64. Fixes: ccce20fc79 ("sd_zbc: Avoid that resetting a zone fails sporadically") Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com> Cc: Bart Van Assche <bart.vanassche@wdc.com> Cc: stable@kernel.org Reviewed-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Bart Van Assche <bart.vanassche@wdc.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ecc160ece6
commit
763ccb4d19
@ -430,7 +430,8 @@ static int sd_zbc_check_capacity(struct scsi_disk *sdkp,
|
||||
* Check that all zones of the device are equal. The last zone can however
|
||||
* be smaller. The zone size must also be a power of two number of LBAs.
|
||||
*
|
||||
* Returns the zone size in bytes upon success or an error code upon failure.
|
||||
* Returns the zone size in number of blocks upon success or an error code
|
||||
* upon failure.
|
||||
*/
|
||||
static s64 sd_zbc_check_zone_size(struct scsi_disk *sdkp)
|
||||
{
|
||||
@ -440,7 +441,7 @@ static s64 sd_zbc_check_zone_size(struct scsi_disk *sdkp)
|
||||
unsigned char *rec;
|
||||
unsigned int buf_len;
|
||||
unsigned int list_length;
|
||||
int ret;
|
||||
s64 ret;
|
||||
u8 same;
|
||||
|
||||
/* Get a buffer */
|
||||
|
Loading…
x
Reference in New Issue
Block a user