The sd_revalidate_disk() function currently returns 0 for
both success and memory allocation failure.Since none of its
callers use the return value, this return code is both unnecessary
and potentially misleading.
Change the return type of sd_revalidate_disk() from int to void
and remove all return value handling. This makes the function
semantics clearer and avoids confusion about unused return codes.
Signed-off-by: Abinash Singh <abinashsinghlalotra@gmail.com>
---
drivers/scsi/sd.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
index c3791746806d..ba3bfd9b00aa 100644
--- a/drivers/scsi/sd.c
+++ b/drivers/scsi/sd.c
@@ -106,7 +106,7 @@ static void sd_config_discard(struct scsi_disk *sdkp, struct queue_limits *lim,
unsigned int mode);
static void sd_config_write_same(struct scsi_disk *sdkp,
struct queue_limits *lim);
-static int sd_revalidate_disk(struct gendisk *);
+static void sd_revalidate_disk(struct gendisk *);
static void sd_unlock_native_capacity(struct gendisk *disk);
static void sd_shutdown(struct device *);
static void scsi_disk_release(struct device *cdev);
@@ -3691,7 +3691,7 @@ static void sd_read_block_zero(struct scsi_disk *sdkp)
* performs disk spin up, read_capacity, etc.
* @disk: struct gendisk we care about
**/
-static int sd_revalidate_disk(struct gendisk *disk)
+static void sd_revalidate_disk(struct gendisk *disk)
{
struct scsi_disk *sdkp = scsi_disk(disk);
struct scsi_device *sdp = sdkp->device;
@@ -3709,13 +3709,13 @@ static int sd_revalidate_disk(struct gendisk *disk)
* of the other niceties.
*/
if (!scsi_device_online(sdp))
- goto out;
+ return;
lim = kmalloc(sizeof(*lim), GFP_KERNEL);
if (!lim) {
sd_printk(KERN_WARNING, sdkp,
"sd_revalidate_disk: Disk limit allocation failure.\n");
- goto out;
+ return;
}
buffer = kmalloc(SD_BUF_SIZE, GFP_KERNEL);
@@ -3829,7 +3829,6 @@ static int sd_revalidate_disk(struct gendisk *disk)
kfree(lim);
kfree(buffer);
- return err;
}
/**
--
2.43.0
On 8/16/25 1:53 PM, Abinash Singh wrote:
> diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c
> index c3791746806d..ba3bfd9b00aa 100644
> --- a/drivers/scsi/sd.c
> +++ b/drivers/scsi/sd.c
> @@ -106,7 +106,7 @@ static void sd_config_discard(struct scsi_disk *sdkp, struct queue_limits *lim,
> unsigned int mode);
> static void sd_config_write_same(struct scsi_disk *sdkp,
> struct queue_limits *lim);
> -static int sd_revalidate_disk(struct gendisk *);
> +static void sd_revalidate_disk(struct gendisk *);
> static void sd_unlock_native_capacity(struct gendisk *disk);
> static void sd_shutdown(struct device *);
> static void scsi_disk_release(struct device *cdev);
> @@ -3691,7 +3691,7 @@ static void sd_read_block_zero(struct scsi_disk *sdkp)
> * performs disk spin up, read_capacity, etc.
> * @disk: struct gendisk we care about
> **/
> -static int sd_revalidate_disk(struct gendisk *disk)
> +static void sd_revalidate_disk(struct gendisk *disk)
> {
> struct scsi_disk *sdkp = scsi_disk(disk);
> struct scsi_device *sdp = sdkp->device;
> @@ -3709,13 +3709,13 @@ static int sd_revalidate_disk(struct gendisk *disk)
> * of the other niceties.
> */
> if (!scsi_device_online(sdp))
> - goto out;
> + return;
>
> lim = kmalloc(sizeof(*lim), GFP_KERNEL);
> if (!lim) {
> sd_printk(KERN_WARNING, sdkp,
> "sd_revalidate_disk: Disk limit allocation failure.\n");
> - goto out;
> + return;
> }
>
> buffer = kmalloc(SD_BUF_SIZE, GFP_KERNEL);
> @@ -3829,7 +3829,6 @@ static int sd_revalidate_disk(struct gendisk *disk)
> kfree(lim);
> kfree(buffer);
>
> - return err;
> }
Shouldn't this patch remove the initializer from the 'err' variable?
Otherwise this patch looks good to me.
Bart.
© 2016 - 2026 Red Hat, Inc.