From d177ca18a42fb7ce2c2f2d53f5e231571e3c2fb3 Mon Sep 17 00:00:00 2001 From: Andrew Morton Date: Tue, 18 Nov 2003 23:04:07 -0600 Subject: [PATCH] [PATCH] fix scsi_report_lun_scan bug Original report and bug fix from: Amit Patel The problem was a signed vs unsigned char problem when computing luns for scanning. --- drivers/scsi/scsi_scan.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/scsi/scsi_scan.c b/drivers/scsi/scsi_scan.c index 9e9f9c68d2b96..0ba7260105042 100644 --- a/drivers/scsi/scsi_scan.c +++ b/drivers/scsi/scsi_scan.c @@ -900,7 +900,7 @@ static int scsi_report_lun_scan(struct scsi_device *sdev, int bflags, unsigned int retries; struct scsi_lun *lunp, *lun_data; struct scsi_request *sreq; - char *data; + u8 *data; /* * Only support SCSI-3 and up devices. @@ -991,7 +991,7 @@ static int scsi_report_lun_scan(struct scsi_device *sdev, int bflags, /* * Get the length from the first four bytes of lun_data. */ - data = (char *) lun_data->scsi_lun; + data = (u8 *) lun_data->scsi_lun; length = ((data[0] << 24) | (data[1] << 16) | (data[2] << 8) | (data[3] << 0)); -- 2.53.0