[PATCH] INQ Report HiSup=1 and TrmTsdk=0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



TGTD claim SPC-3 support.

Change the inquiry data to report TrmTsk=0.
This flag dissapeared in SPC-2 and is flagged "obsolete" in any later SPC standard. So this flag should be set to 0 in SPC-2 and later, including SPC-3.

Change HiSup flag to 1.
SAM4 describes this bit as :
   4.6.3 LUNs overview
   All LUN formats described in this standard are hierarchical in
   structure even when only a single level in that hierarchy is
   used. The HISUP bit shall be set to one in the standard INQUIRY
   data (see SPC-4) when any LUN format described in this standard
   is used. Non-hierarchical formats are outside the scope of this
   standard.

TGTD uses the two different LUN formats depending on whether the LUN number is <256 or not:

1, For LUNs < 256
See SAM4:  4.6.5 Single level LUN structure
See the diagram at this section.

2, For LUNs >= 256
See SAM4: 4.6.8 Flat space addressing method
See the diagram at this section.

Since both LUN formats that TGTD uses is described in SAM4, therefore
we should set the HiSup bit in the standard inquiry data.

Signed-off-by: Ronnie Sahlberg <ronniesahlberg@xxxxxxxxx>
---
 usr/spc.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/usr/spc.c b/usr/spc.c
index 1cbc2c1..9fb5a6d 100644
--- a/usr/spc.c
+++ b/usr/spc.c
@@ -227,7 +227,7 @@ int spc_inquiry(int host_no, struct scsi_cmd *cmd)
 		data[0] = devtype;
 		data[1] = (attrs->removable) ? 0x80 : 0;
 		data[2] = 5;	/* SPC-3 */
-		data[3] = 0x42;
+		data[3] = 0x12;
 		data[7] = 0x02;
 
 		memset(data + 8, 0x20, 28);
-- 
1.7.3.1

--
To unsubscribe from this list: send the line "unsubscribe stgt" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux SCSI]     [Linux RAID]     [Linux Clusters]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]

  Powered by Linux