On 5/4/21 11:55 AM, Christoph Hellwig wrote:
On Mon, May 03, 2021 at 05:03:20PM +0200, Hannes Reinecke wrote:
Use dummy inquiry data when initialising devices and not just
some 'nullnullnull' string.
Why?
Because it's really weird if you start up scsi_debug with thousands of
devices and then call 'lsscsi' repeatedly. That will print out several
devices with 'nullnullnull', only to be replaced with the 'real' inquiry
data during device discovery.
I'd rather have a valid inquiry right from the start.
+/*
+ * Dummy inquiry for virtual LUNs:
+ *
+ * standard INQUIRY: [qualifier indicates no connected LU]
+ * PQual=1 Device_type=31 RMB=0 LU_CONG=0 version=0x05 [SPC-3]
+ * [AERC=0] [TrmTsk=0] NormACA=0 HiSUP=0 Resp_data_format=2
+ * SCCS=0 ACC=0 TPGS=0 3PC=0 Protect=0 [BQue=0]
+ * EncServ=0 MultiP=0 [MChngr=0] [ACKREQQ=0] Addr16=0
+ * [RelAdr=0] WBus16=0 Sync=0 [Linked=0] [TranDis=0] CmdQue=0
+ * length=36 (0x24) Peripheral device type: no physical device on this lu
+ * Vendor identification: LINUX
+ * Product identification: VIRTUALLUN
+ * Product revision level: 1.0
+ */
You don't juse set this up for virtual Luns, but as a default for all
scsi_devices before calling inquirty. I'd much helper with a helper
to fill out fake inquiry data rather than having seemingly valid data
for all devices before inquirty is called or if it fails.
Right. Will be doing so.
Cheers,
Hannes
--
Dr. Hannes Reinecke Kernel Storage Architect
hare@xxxxxxx +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer