Skip to content

Commit 3813d28

Browse files
aheevmartinkpetersen
authored andcommitted
scsi: scsi_debug: Fix uninitialized pointers with __free attr
Uninitialized pointers with '__free' attribute can cause undefined behaviour as the memory assigned(randomly) to the pointer is freed automatically when the pointer goes out of scope scsi doesn't have any bugs related to this as of now, but it is better to initialize and assign pointers with '__free' attr in one statement to ensure proper scope-based cleanup Reported-by: Dan Carpenter <dan.carpenter@linaro.org> Closes: https://lore.kernel.org/all/aPiG_F5EBQUjZqsl@stanley.mountain/ Signed-off-by: Ally Heev <allyheev@gmail.com> Link: https://patch.msgid.link/20251105-aheev-uninitialized-free-attr-scsi-v1-1-d28435a0a7ea@gmail.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
1 parent 1898714 commit 3813d28

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

drivers/scsi/scsi_debug.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2961,11 +2961,11 @@ static int resp_mode_sense(struct scsi_cmnd *scp,
29612961
int target_dev_id;
29622962
int target = scp->device->id;
29632963
unsigned char *ap;
2964-
unsigned char *arr __free(kfree);
29652964
unsigned char *cmd = scp->cmnd;
29662965
bool dbd, llbaa, msense_6, is_disk, is_zbc, is_tape;
29672966

2968-
arr = kzalloc(SDEBUG_MAX_MSENSE_SZ, GFP_ATOMIC);
2967+
unsigned char *arr __free(kfree) = kzalloc(SDEBUG_MAX_MSENSE_SZ, GFP_ATOMIC);
2968+
29692969
if (!arr)
29702970
return -ENOMEM;
29712971
dbd = !!(cmd[1] & 0x8); /* disable block descriptors */

0 commit comments

Comments
 (0)