]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
scsi: ses: Handle positive SCSI error from ses_recv_diag()
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 23 Feb 2026 15:44:59 +0000 (16:44 +0100)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 20 Mar 2026 01:33:28 +0000 (21:33 -0400)
ses_recv_diag() can return a positive value, which also means that an
error happened, so do not only test for negative values.

Cc: James E.J. Bottomley <James.Bottomley@HansenPartnership.com>
Cc: Martin K. Petersen <martin.petersen@oracle.com>
Cc: stable <stable@kernel.org>
Assisted-by: gkh_clanker_2000
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Link: https://patch.msgid.link/2026022301-bony-overstock-a07f@gregkh
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ses.c

index 8e1686358e25c65ec1fd9f51cdc3fbcb89744305..4c348645b04ee401fb76dbadb86dc3b90e9d3afa 100644 (file)
@@ -215,7 +215,7 @@ static unsigned char *ses_get_page2_descriptor(struct enclosure_device *edev,
        unsigned char *type_ptr = ses_dev->page1_types;
        unsigned char *desc_ptr = ses_dev->page2 + 8;
 
-       if (ses_recv_diag(sdev, 2, ses_dev->page2, ses_dev->page2_len) < 0)
+       if (ses_recv_diag(sdev, 2, ses_dev->page2, ses_dev->page2_len))
                return NULL;
 
        for (i = 0; i < ses_dev->page1_num_types; i++, type_ptr += 4) {