mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	scsi: remove MSG_*_TAG defines
For SPI drivers use the message definitions from scsi.h, and for target drivers introduce a new TCM_*_TAG namespace. Signed-off-by: Christoph Hellwig <hch@lst.de> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com
This commit is contained in:
		
							parent
							
								
									4e484896ac
								
							
						
					
					
						commit
						68d81f4004
					
				
					 18 changed files with 58 additions and 58 deletions
				
			
		| 
						 | 
				
			
			@ -1708,17 +1708,17 @@ static int srpt_handle_cmd(struct srpt_rdma_ch *ch,
 | 
			
		|||
 | 
			
		||||
	switch (srp_cmd->task_attr) {
 | 
			
		||||
	case SRP_CMD_SIMPLE_Q:
 | 
			
		||||
		cmd->sam_task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case SRP_CMD_ORDERED_Q:
 | 
			
		||||
	default:
 | 
			
		||||
		cmd->sam_task_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_ORDERED_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case SRP_CMD_HEAD_OF_Q:
 | 
			
		||||
		cmd->sam_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case SRP_CMD_ACA:
 | 
			
		||||
		cmd->sam_task_attr = MSG_ACA_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_ACA_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1733,7 +1733,7 @@ static int srpt_handle_cmd(struct srpt_rdma_ch *ch,
 | 
			
		|||
				       sizeof(srp_cmd->lun));
 | 
			
		||||
	rc = target_submit_cmd(cmd, ch->sess, srp_cmd->cdb,
 | 
			
		||||
			&send_ioctx->sense_data[0], unpacked_lun, data_len,
 | 
			
		||||
			MSG_SIMPLE_TAG, dir, TARGET_SCF_ACK_KREF);
 | 
			
		||||
			TCM_SIMPLE_TAG, dir, TARGET_SCF_ACK_KREF);
 | 
			
		||||
	if (rc != 0) {
 | 
			
		||||
		ret = TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;
 | 
			
		||||
		goto send_sense;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -7921,9 +7921,9 @@ static int asc_build_req(struct asc_board *boardp, struct scsi_cmnd *scp,
 | 
			
		|||
	 */
 | 
			
		||||
	if ((asc_dvc->cur_dvc_qng[scp->device->id] > 0) &&
 | 
			
		||||
	    (boardp->reqcnt[scp->device->id] % 255) == 0) {
 | 
			
		||||
		asc_scsi_q->q2.tag_code = MSG_ORDERED_TAG;
 | 
			
		||||
		asc_scsi_q->q2.tag_code = ORDERED_QUEUE_TAG;
 | 
			
		||||
	} else {
 | 
			
		||||
		asc_scsi_q->q2.tag_code = MSG_SIMPLE_TAG;
 | 
			
		||||
		asc_scsi_q->q2.tag_code = SIMPLE_QUEUE_TAG;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/* Build ASC_SCSI_Q */
 | 
			
		||||
| 
						 | 
				
			
			@ -8351,7 +8351,7 @@ static int AscPutReadyQueue(ASC_DVC_VAR *asc_dvc, ASC_SCSI_Q *scsiq, uchar q_no)
 | 
			
		|||
	}
 | 
			
		||||
	q_addr = ASC_QNO_TO_QADDR(q_no);
 | 
			
		||||
	if ((scsiq->q1.target_id & asc_dvc->use_tagged_qng) == 0) {
 | 
			
		||||
		scsiq->q2.tag_code &= ~MSG_SIMPLE_TAG;
 | 
			
		||||
		scsiq->q2.tag_code &= ~SIMPLE_QUEUE_TAG;
 | 
			
		||||
	}
 | 
			
		||||
	scsiq->q1.status = QS_FREE;
 | 
			
		||||
	AscMemWordCopyPtrToLram(iop_base,
 | 
			
		||||
| 
						 | 
				
			
			@ -8669,7 +8669,7 @@ static int AscExeScsiQueue(ASC_DVC_VAR *asc_dvc, ASC_SCSI_Q *scsiq)
 | 
			
		|||
		}
 | 
			
		||||
	}
 | 
			
		||||
	if (disable_syn_offset_one_fix) {
 | 
			
		||||
		scsiq->q2.tag_code &= ~MSG_SIMPLE_TAG;
 | 
			
		||||
		scsiq->q2.tag_code &= ~SIMPLE_QUEUE_TAG;
 | 
			
		||||
		scsiq->q2.tag_code |= (ASC_TAG_FLAG_DISABLE_ASYN_USE_SYN_FIX |
 | 
			
		||||
				       ASC_TAG_FLAG_DISABLE_DISCONNECT);
 | 
			
		||||
	} else {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3218,25 +3218,25 @@ static inline int qlt_get_fcp_task_attr(struct scsi_qla_host *vha,
 | 
			
		|||
 | 
			
		||||
	switch (task_codes) {
 | 
			
		||||
	case ATIO_SIMPLE_QUEUE:
 | 
			
		||||
		fcp_task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case ATIO_HEAD_OF_QUEUE:
 | 
			
		||||
		fcp_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case ATIO_ORDERED_QUEUE:
 | 
			
		||||
		fcp_task_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_ORDERED_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case ATIO_ACA_QUEUE:
 | 
			
		||||
		fcp_task_attr = MSG_ACA_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_ACA_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case ATIO_UNTAGGED:
 | 
			
		||||
		fcp_task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	default:
 | 
			
		||||
		ql_dbg(ql_dbg_tgt_mgt, vha, 0xf05d,
 | 
			
		||||
		    "qla_target: unknown task code %x, use ORDERED instead\n",
 | 
			
		||||
		    task_codes);
 | 
			
		||||
		fcp_task_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		fcp_task_attr = TCM_ORDERED_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -128,7 +128,6 @@ static const char *scsi_debug_version_date = "20141022";
 | 
			
		|||
#define DEF_REMOVABLE false
 | 
			
		||||
#define DEF_SCSI_LEVEL   6    /* INQUIRY, byte2 [6->SPC-4] */
 | 
			
		||||
#define DEF_SECTOR_SIZE 512
 | 
			
		||||
#define DEF_TAGGED_QUEUING 0 /* 0 | MSG_SIMPLE_TAG | MSG_ORDERED_TAG */
 | 
			
		||||
#define DEF_UNMAP_ALIGNMENT 0
 | 
			
		||||
#define DEF_UNMAP_GRANULARITY 1
 | 
			
		||||
#define DEF_UNMAP_MAX_BLOCKS 0xFFFFFFFF
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1221,7 +1221,7 @@ EXPORT_SYMBOL_GPL(spi_populate_ppr_msg);
 | 
			
		|||
int spi_populate_tag_msg(unsigned char *msg, struct scsi_cmnd *cmd)
 | 
			
		||||
{
 | 
			
		||||
        if (cmd->flags & SCMD_TAGGED) {
 | 
			
		||||
		*msg++ = MSG_SIMPLE_TAG;
 | 
			
		||||
		*msg++ = SIMPLE_QUEUE_TAG;
 | 
			
		||||
        	*msg++ = cmd->request->tag;
 | 
			
		||||
        	return 2;
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -943,17 +943,17 @@ int iscsit_setup_scsi_cmd(struct iscsi_conn *conn, struct iscsi_cmd *cmd,
 | 
			
		|||
	 */
 | 
			
		||||
	if ((iscsi_task_attr == ISCSI_ATTR_UNTAGGED) ||
 | 
			
		||||
	    (iscsi_task_attr == ISCSI_ATTR_SIMPLE))
 | 
			
		||||
		sam_task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		sam_task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
	else if (iscsi_task_attr == ISCSI_ATTR_ORDERED)
 | 
			
		||||
		sam_task_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		sam_task_attr = TCM_ORDERED_TAG;
 | 
			
		||||
	else if (iscsi_task_attr == ISCSI_ATTR_HEAD_OF_QUEUE)
 | 
			
		||||
		sam_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		sam_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
	else if (iscsi_task_attr == ISCSI_ATTR_ACA)
 | 
			
		||||
		sam_task_attr = MSG_ACA_TAG;
 | 
			
		||||
		sam_task_attr = TCM_ACA_TAG;
 | 
			
		||||
	else {
 | 
			
		||||
		pr_debug("Unknown iSCSI Task Attribute: 0x%02x, using"
 | 
			
		||||
			" MSG_SIMPLE_TAG\n", iscsi_task_attr);
 | 
			
		||||
		sam_task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
			" TCM_SIMPLE_TAG\n", iscsi_task_attr);
 | 
			
		||||
		sam_task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	cmd->iscsi_opcode	= ISCSI_OP_SCSI_CMD;
 | 
			
		||||
| 
						 | 
				
			
			@ -1811,7 +1811,7 @@ iscsit_handle_task_mgt_cmd(struct iscsi_conn *conn, struct iscsi_cmd *cmd,
 | 
			
		|||
		transport_init_se_cmd(&cmd->se_cmd,
 | 
			
		||||
				      &lio_target_fabric_configfs->tf_ops,
 | 
			
		||||
				      conn->sess->se_sess, 0, DMA_NONE,
 | 
			
		||||
				      MSG_SIMPLE_TAG, cmd->sense_buffer + 2);
 | 
			
		||||
				      TCM_SIMPLE_TAG, cmd->sense_buffer + 2);
 | 
			
		||||
 | 
			
		||||
		target_get_sess_cmd(conn->sess->se_sess, &cmd->se_cmd, true);
 | 
			
		||||
		sess_ref = true;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -168,7 +168,7 @@ static void tcm_loop_submission_work(struct work_struct *work)
 | 
			
		|||
 | 
			
		||||
	rc = target_submit_cmd_map_sgls(se_cmd, tl_nexus->se_sess, sc->cmnd,
 | 
			
		||||
			&tl_cmd->tl_sense_buf[0], tl_cmd->sc->device->lun,
 | 
			
		||||
			transfer_length, MSG_SIMPLE_TAG,
 | 
			
		||||
			transfer_length, TCM_SIMPLE_TAG,
 | 
			
		||||
			sc->sc_data_direction, 0,
 | 
			
		||||
			scsi_sglist(sc), scsi_sg_count(sc),
 | 
			
		||||
			sgl_bidi, sgl_bidi_count,
 | 
			
		||||
| 
						 | 
				
			
			@ -248,7 +248,7 @@ static int tcm_loop_issue_tmr(struct tcm_loop_tpg *tl_tpg,
 | 
			
		|||
	 * Initialize struct se_cmd descriptor from target_core_mod infrastructure
 | 
			
		||||
	 */
 | 
			
		||||
	transport_init_se_cmd(se_cmd, se_tpg->se_tpg_tfo, se_sess, 0,
 | 
			
		||||
				DMA_NONE, MSG_SIMPLE_TAG,
 | 
			
		||||
				DMA_NONE, TCM_SIMPLE_TAG,
 | 
			
		||||
				&tl_cmd->tl_sense_buf[0]);
 | 
			
		||||
 | 
			
		||||
	rc = core_tmr_alloc_req(se_cmd, tl_tmr, tmr, GFP_KERNEL);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1237,7 +1237,7 @@ static void sbp_handle_command(struct sbp_target_request *req)
 | 
			
		|||
 | 
			
		||||
	if (target_submit_cmd(&req->se_cmd, sess->se_sess, req->cmd_buf,
 | 
			
		||||
			      req->sense_buf, unpacked_lun, data_length,
 | 
			
		||||
			      MSG_SIMPLE_TAG, data_dir, 0))
 | 
			
		||||
			      TCM_SIMPLE_TAG, data_dir, 0))
 | 
			
		||||
		goto err;
 | 
			
		||||
 | 
			
		||||
	return;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1094,7 +1094,7 @@ pscsi_execute_cmd(struct se_cmd *cmd)
 | 
			
		|||
	req->retries = PS_RETRY;
 | 
			
		||||
 | 
			
		||||
	blk_execute_rq_nowait(pdv->pdv_sd->request_queue, NULL, req,
 | 
			
		||||
			(cmd->sam_task_attr == MSG_HEAD_TAG),
 | 
			
		||||
			(cmd->sam_task_attr == TCM_HEAD_TAG),
 | 
			
		||||
			pscsi_req_done);
 | 
			
		||||
 | 
			
		||||
	return 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -485,7 +485,7 @@ static sense_reason_t compare_and_write_callback(struct se_cmd *cmd)
 | 
			
		|||
	cmd->t_data_nents_orig = cmd->t_data_nents;
 | 
			
		||||
	cmd->t_data_nents = 1;
 | 
			
		||||
 | 
			
		||||
	cmd->sam_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
	cmd->sam_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
	cmd->transport_complete_callback = compare_and_write_post;
 | 
			
		||||
	/*
 | 
			
		||||
	 * Now reset ->execute_cmd() to the normal sbc_execute_rw() handler
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1357,7 +1357,7 @@ spc_parse_cdb(struct se_cmd *cmd, unsigned int *size)
 | 
			
		|||
		 * Do implicit HEAD_OF_QUEUE processing for INQUIRY.
 | 
			
		||||
		 * See spc4r17 section 5.3
 | 
			
		||||
		 */
 | 
			
		||||
		cmd->sam_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
		cmd->execute_cmd = spc_emulate_inquiry;
 | 
			
		||||
		break;
 | 
			
		||||
	case SECURITY_PROTOCOL_IN:
 | 
			
		||||
| 
						 | 
				
			
			@ -1391,7 +1391,7 @@ spc_parse_cdb(struct se_cmd *cmd, unsigned int *size)
 | 
			
		|||
		 * Do implicit HEAD_OF_QUEUE processing for REPORT_LUNS
 | 
			
		||||
		 * See spc4r17 section 5.3
 | 
			
		||||
		 */
 | 
			
		||||
		cmd->sam_task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		cmd->sam_task_attr = TCM_HEAD_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case TEST_UNIT_READY:
 | 
			
		||||
		cmd->execute_cmd = spc_emulate_testunitready;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1159,7 +1159,7 @@ transport_check_alloc_task_attr(struct se_cmd *cmd)
 | 
			
		|||
	if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV)
 | 
			
		||||
		return 0;
 | 
			
		||||
 | 
			
		||||
	if (cmd->sam_task_attr == MSG_ACA_TAG) {
 | 
			
		||||
	if (cmd->sam_task_attr == TCM_ACA_TAG) {
 | 
			
		||||
		pr_debug("SAM Task Attribute ACA"
 | 
			
		||||
			" emulation is not supported\n");
 | 
			
		||||
		return TCM_INVALID_CDB_FIELD;
 | 
			
		||||
| 
						 | 
				
			
			@ -1531,7 +1531,7 @@ int target_submit_tmr(struct se_cmd *se_cmd, struct se_session *se_sess,
 | 
			
		|||
	BUG_ON(!se_tpg);
 | 
			
		||||
 | 
			
		||||
	transport_init_se_cmd(se_cmd, se_tpg->se_tpg_tfo, se_sess,
 | 
			
		||||
			      0, DMA_NONE, MSG_SIMPLE_TAG, sense);
 | 
			
		||||
			      0, DMA_NONE, TCM_SIMPLE_TAG, sense);
 | 
			
		||||
	/*
 | 
			
		||||
	 * FIXME: Currently expect caller to handle se_cmd->se_tmr_req
 | 
			
		||||
	 * allocation failure.
 | 
			
		||||
| 
						 | 
				
			
			@ -1718,12 +1718,12 @@ static bool target_handle_task_attr(struct se_cmd *cmd)
 | 
			
		|||
	 * to allow the passed struct se_cmd list of tasks to the front of the list.
 | 
			
		||||
	 */
 | 
			
		||||
	switch (cmd->sam_task_attr) {
 | 
			
		||||
	case MSG_HEAD_TAG:
 | 
			
		||||
	case TCM_HEAD_TAG:
 | 
			
		||||
		pr_debug("Added HEAD_OF_QUEUE for CDB: 0x%02x, "
 | 
			
		||||
			 "se_ordered_id: %u\n",
 | 
			
		||||
			 cmd->t_task_cdb[0], cmd->se_ordered_id);
 | 
			
		||||
		return false;
 | 
			
		||||
	case MSG_ORDERED_TAG:
 | 
			
		||||
	case TCM_ORDERED_TAG:
 | 
			
		||||
		atomic_inc_mb(&dev->dev_ordered_sync);
 | 
			
		||||
 | 
			
		||||
		pr_debug("Added ORDERED for CDB: 0x%02x to ordered list, "
 | 
			
		||||
| 
						 | 
				
			
			@ -1828,7 +1828,7 @@ static void target_restart_delayed_cmds(struct se_device *dev)
 | 
			
		|||
 | 
			
		||||
		__target_execute_cmd(cmd);
 | 
			
		||||
 | 
			
		||||
		if (cmd->sam_task_attr == MSG_ORDERED_TAG)
 | 
			
		||||
		if (cmd->sam_task_attr == TCM_ORDERED_TAG)
 | 
			
		||||
			break;
 | 
			
		||||
	}
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			@ -1844,18 +1844,18 @@ static void transport_complete_task_attr(struct se_cmd *cmd)
 | 
			
		|||
	if (dev->transport->transport_type == TRANSPORT_PLUGIN_PHBA_PDEV)
 | 
			
		||||
		return;
 | 
			
		||||
 | 
			
		||||
	if (cmd->sam_task_attr == MSG_SIMPLE_TAG) {
 | 
			
		||||
	if (cmd->sam_task_attr == TCM_SIMPLE_TAG) {
 | 
			
		||||
		atomic_dec_mb(&dev->simple_cmds);
 | 
			
		||||
		dev->dev_cur_ordered_id++;
 | 
			
		||||
		pr_debug("Incremented dev->dev_cur_ordered_id: %u for"
 | 
			
		||||
			" SIMPLE: %u\n", dev->dev_cur_ordered_id,
 | 
			
		||||
			cmd->se_ordered_id);
 | 
			
		||||
	} else if (cmd->sam_task_attr == MSG_HEAD_TAG) {
 | 
			
		||||
	} else if (cmd->sam_task_attr == TCM_HEAD_TAG) {
 | 
			
		||||
		dev->dev_cur_ordered_id++;
 | 
			
		||||
		pr_debug("Incremented dev_cur_ordered_id: %u for"
 | 
			
		||||
			" HEAD_OF_QUEUE: %u\n", dev->dev_cur_ordered_id,
 | 
			
		||||
			cmd->se_ordered_id);
 | 
			
		||||
	} else if (cmd->sam_task_attr == MSG_ORDERED_TAG) {
 | 
			
		||||
	} else if (cmd->sam_task_attr == TCM_ORDERED_TAG) {
 | 
			
		||||
		atomic_dec_mb(&dev->dev_ordered_sync);
 | 
			
		||||
 | 
			
		||||
		dev->dev_cur_ordered_id++;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -554,17 +554,17 @@ static void ft_send_work(struct work_struct *work)
 | 
			
		|||
	 */
 | 
			
		||||
	switch (fcp->fc_pri_ta & FCP_PTA_MASK) {
 | 
			
		||||
	case FCP_PTA_HEADQ:
 | 
			
		||||
		task_attr = MSG_HEAD_TAG;
 | 
			
		||||
		task_attr = TCM_HEAD_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case FCP_PTA_ORDERED:
 | 
			
		||||
		task_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		task_attr = TCM_ORDERED_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case FCP_PTA_ACA:
 | 
			
		||||
		task_attr = MSG_ACA_TAG;
 | 
			
		||||
		task_attr = TCM_ACA_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case FCP_PTA_SIMPLE: /* Fallthrough */
 | 
			
		||||
	default:
 | 
			
		||||
		task_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		task_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	fc_seq_exch(cmd->seq)->lp->tt.seq_set_resp(cmd->seq, ft_recv_seq, cmd);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1131,19 +1131,19 @@ static int usbg_submit_command(struct f_uas *fu,
 | 
			
		|||
 | 
			
		||||
	switch (cmd_iu->prio_attr & 0x7) {
 | 
			
		||||
	case UAS_HEAD_TAG:
 | 
			
		||||
		cmd->prio_attr = MSG_HEAD_TAG;
 | 
			
		||||
		cmd->prio_attr = TCM_HEAD_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case UAS_ORDERED_TAG:
 | 
			
		||||
		cmd->prio_attr = MSG_ORDERED_TAG;
 | 
			
		||||
		cmd->prio_attr = TCM_ORDERED_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	case UAS_ACA:
 | 
			
		||||
		cmd->prio_attr = MSG_ACA_TAG;
 | 
			
		||||
		cmd->prio_attr = TCM_ACA_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	default:
 | 
			
		||||
		pr_debug_once("Unsupported prio_attr: %02x.\n",
 | 
			
		||||
				cmd_iu->prio_attr);
 | 
			
		||||
	case UAS_SIMPLE_TAG:
 | 
			
		||||
		cmd->prio_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
		cmd->prio_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
		break;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -1240,7 +1240,7 @@ static int bot_submit_command(struct f_uas *fu,
 | 
			
		|||
		goto err;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	cmd->prio_attr = MSG_SIMPLE_TAG;
 | 
			
		||||
	cmd->prio_attr = TCM_SIMPLE_TAG;
 | 
			
		||||
	se_cmd = &cmd->se_cmd;
 | 
			
		||||
	cmd->unpacked_lun = cbw->Lun;
 | 
			
		||||
	cmd->is_read = cbw->Flags & US_BULK_FLAG_IN ? 1 : 0;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -606,7 +606,7 @@ static void scsiback_device_action(struct vscsibk_pend *pending_req,
 | 
			
		|||
	init_waitqueue_head(&tmr->tmr_wait);
 | 
			
		||||
 | 
			
		||||
	transport_init_se_cmd(se_cmd, tpg->se_tpg.se_tpg_tfo,
 | 
			
		||||
		tpg->tpg_nexus->tvn_se_sess, 0, DMA_NONE, MSG_SIMPLE_TAG,
 | 
			
		||||
		tpg->tpg_nexus->tvn_se_sess, 0, DMA_NONE, TCM_SIMPLE_TAG,
 | 
			
		||||
		&pending_req->sense_buffer[0]);
 | 
			
		||||
 | 
			
		||||
	rc = core_tmr_alloc_req(se_cmd, tmr, act, GFP_KERNEL);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,11 +6,6 @@
 | 
			
		|||
#include <scsi/scsi_device.h>
 | 
			
		||||
#include <scsi/scsi_host.h>
 | 
			
		||||
 | 
			
		||||
#define MSG_SIMPLE_TAG	0x20
 | 
			
		||||
#define MSG_HEAD_TAG	0x21
 | 
			
		||||
#define MSG_ORDERED_TAG	0x22
 | 
			
		||||
#define MSG_ACA_TAG	0x24	/* unsupported */
 | 
			
		||||
 | 
			
		||||
#define SCSI_NO_TAG	(-1)    /* identify no tag in use */
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -476,6 +476,12 @@ struct se_dif_v1_tuple {
 | 
			
		|||
	__be32			ref_tag;
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
/* for sam_task_attr */
 | 
			
		||||
#define TCM_SIMPLE_TAG	0x20
 | 
			
		||||
#define TCM_HEAD_TAG	0x21
 | 
			
		||||
#define TCM_ORDERED_TAG	0x22
 | 
			
		||||
#define TCM_ACA_TAG	0x24
 | 
			
		||||
 | 
			
		||||
struct se_cmd {
 | 
			
		||||
	/* SAM response code being sent to initiator */
 | 
			
		||||
	u8			scsi_status;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -109,10 +109,10 @@
 | 
			
		|||
 | 
			
		||||
#define show_task_attribute_name(val)				\
 | 
			
		||||
	__print_symbolic(val,					\
 | 
			
		||||
		{ MSG_SIMPLE_TAG,	"SIMPLE"	},	\
 | 
			
		||||
		{ MSG_HEAD_TAG,		"HEAD"		},	\
 | 
			
		||||
		{ MSG_ORDERED_TAG,	"ORDERED"	},	\
 | 
			
		||||
		{ MSG_ACA_TAG,		"ACA"		} )
 | 
			
		||||
		{ TCM_SIMPLE_TAG,	"SIMPLE"	},	\
 | 
			
		||||
		{ TCM_HEAD_TAG,		"HEAD"		},	\
 | 
			
		||||
		{ TCM_ORDERED_TAG,	"ORDERED"	},	\
 | 
			
		||||
		{ TCM_ACA_TAG,		"ACA"		} )
 | 
			
		||||
 | 
			
		||||
#define show_scsi_status_name(val)				\
 | 
			
		||||
	__print_symbolic(val,					\
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue