Re: [PATCH -next v3] scsi: sd: Fix an incorrect type in 'sd_spinup_disk()'
From: Bart Van Assche
Date: Tue Jul 09 2024 - 14:00:09 EST
On 7/9/24 2:39 AM, Jiapeng Chong wrote:
The return value from the call to scsi_execute_cmd() is int. In the
^^^^^
type
'else if' branch of the function scsi_execute_cmd, it will return -EINVAL.
But the type of "the_result" is "unsigned int", causing the error code to
reverse. Modify the type of "the_result" to solve this problem.
^^^^^^^
What is "reversing an error code"? Did you perhaps mean that the return
value is changed from a negative integer to a positive integer?
./drivers/scsi/sd.c:2333:6-16: WARNING: Unsigned expression compared
with zero: the_result > 0.
Doesn't this patch fix reading uninitialized data? If so, shouldn't that
be mentioned in the patch description?
Fixes: c1acf38cd11e ("scsi: sd: Have midlayer retry sd_spinup_disk() errors")
Hmm ... that seems incorrect to me. Commit c1acf38cd11e changed the
indentation of "the_result > 0" expressions but did not introduce these.
Is this perhaps the commit that introduced the "the_result > 0"
expressions: ced202f7bd78 ("scsi: core: Stop using DRIVER_ERROR")?
Thanks,
Bart.