Commit 1b5ad814 authored by Konstantin Shelekhin's avatar Konstantin Shelekhin Committed by Martin K. Petersen
Browse files

scsi: target: Make the virtual LUN 0 device

Create the device for the virtual LUN 0 using the DUMMY flag. This change
makes it possible to remove some special-casing in the INQUIRY code.

Link: https://lore.kernel.org/r/20210322200938.53300-3-k.shelekhin@yadro.com


Reviewed-by: default avatarRoman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: default avatarMike Christie <michael.christie@oracle.com>
Signed-off-by: default avatarKonstantin Shelekhin <k.shelekhin@yadro.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 0aecfa66
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1035,7 +1035,7 @@ int core_dev_setup_virtual_lun0(void)
{
	struct se_hba *hba;
	struct se_device *dev;
	char buf[] = "rd_pages=8,rd_nullio=1";
	char buf[] = "rd_pages=8,rd_nullio=1,rd_dummy=1";
	int ret;

	hba = core_alloc_hba("rd_mcp", 0, HBA_FLAGS_INTERNAL_USE);
+1 −5
Original line number Diff line number Diff line
@@ -701,7 +701,6 @@ static sense_reason_t
spc_emulate_inquiry(struct se_cmd *cmd)
{
	struct se_device *dev = cmd->se_dev;
	struct se_portal_group *tpg = cmd->se_lun->lun_tpg;
	unsigned char *rbuf;
	unsigned char *cdb = cmd->t_task_cdb;
	unsigned char *buf;
@@ -715,9 +714,6 @@ spc_emulate_inquiry(struct se_cmd *cmd)
		return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
	}

	if (dev == rcu_access_pointer(tpg->tpg_virt_lun0->lun_se_dev))
		buf[0] = 0x3f; /* Not connected */
	else
	buf[0] = dev->transport->get_device_type(dev);

	if (!(cdb[1] & 0x1)) {