diff mbox

[1/1] scsi: scsi_debug: Avoid PI being disabled when TGPS is enabled

Message ID 20170526165935.19543-1-martin.petersen@oracle.com (mailing list archive)
State Accepted, archived
Headers show

Commit Message

Martin K. Petersen May 26, 2017, 4:59 p.m. UTC
It was not possible to enable both T10 PI and TGPS because they share
the same byte in the INQUIRY response. Logically OR the TPGS value
instead of using assignment.

Reported-by: Ritika Srivastava <ritika.srivastava@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
---
 drivers/scsi/scsi_debug.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Bart Van Assche May 31, 2017, 3:05 p.m. UTC | #1
On Fri, 2017-05-26 at 12:59 -0400, Martin K. Petersen wrote:
> It was not possible to enable both T10 PI and TGPS because they share
> the same byte in the INQUIRY response. Logically OR the TPGS value
> instead of using assignment.

Reviewed-by: Bart Van Assche <Bart.VanAssche@sandisk.com>
Ewan Milne May 31, 2017, 3:21 p.m. UTC | #2
On Fri, 2017-05-26 at 12:59 -0400, Martin K. Petersen wrote:
> It was not possible to enable both T10 PI and TGPS because they share
> the same byte in the INQUIRY response. Logically OR the TPGS value
> instead of using assignment.
> 
> Reported-by: Ritika Srivastava <ritika.srivastava@oracle.com>
> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
> ---
>  drivers/scsi/scsi_debug.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
> index 17249c3650fe..b945d187873f 100644
> --- a/drivers/scsi/scsi_debug.c
> +++ b/drivers/scsi/scsi_debug.c
> @@ -1404,7 +1404,7 @@ static int resp_inquiry(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
>  	arr[4] = SDEBUG_LONG_INQ_SZ - 5;
>  	arr[5] = (int)have_dif_prot;	/* PROTECT bit */
>  	if (sdebug_vpd_use_hostno == 0)
> -		arr[5] = 0x10; /* claim: implicit TGPS */
> +		arr[5] |= 0x10; /* claim: implicit TGPS */
>  	arr[6] = 0x10; /* claim: MultiP */
>  	/* arr[6] |= 0x40; ... claim: EncServ (enclosure services) */
>  	arr[7] = 0xa; /* claim: LINKED + CMDQUE */

Code is correct.

s/TGPS/TPGS in the subject line and in one place in the patch description.

Reviewed-by: Ewan D. Milne <emilne@redhat.com>
Martin K. Petersen June 1, 2017, 2:59 a.m. UTC | #3
Ewan,

> Code is correct.
>
> s/TGPS/TPGS in the subject line and in one place in the patch
> description.

Also fixed the original, incorrect comment in the code that begat the
patch description typo. Thanks!

Applied to 4.12/scsi-fixes.
diff mbox

Patch

diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c
index 17249c3650fe..b945d187873f 100644
--- a/drivers/scsi/scsi_debug.c
+++ b/drivers/scsi/scsi_debug.c
@@ -1404,7 +1404,7 @@  static int resp_inquiry(struct scsi_cmnd *scp, struct sdebug_dev_info *devip)
 	arr[4] = SDEBUG_LONG_INQ_SZ - 5;
 	arr[5] = (int)have_dif_prot;	/* PROTECT bit */
 	if (sdebug_vpd_use_hostno == 0)
-		arr[5] = 0x10; /* claim: implicit TGPS */
+		arr[5] |= 0x10; /* claim: implicit TGPS */
 	arr[6] = 0x10; /* claim: MultiP */
 	/* arr[6] |= 0x40; ... claim: EncServ (enclosure services) */
 	arr[7] = 0xa; /* claim: LINKED + CMDQUE */