Commit 14b40c1e authored by Hannes Reinecke's avatar Hannes Reinecke Committed by Martin K. Petersen
Browse files

scsi: target: Use standard SAM status types

target_complete_cmd() and friends requires a SAM status type, so passing
GOOD here is actually wrong.

Link: https://lore.kernel.org/r/20210427083046.31620-40-hare@suse.de


Reviewed-by: default avatarBart Van Assche <bvanassche@acm.org>
Signed-off-by: default avatarHannes Reinecke <hare@suse.de>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent a7479a84
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -123,7 +123,7 @@ target_emulate_report_referrals(struct se_cmd *cmd)

	transport_kunmap_data_sg(cmd);

	target_complete_cmd(cmd, GOOD);
	target_complete_cmd(cmd, SAM_STAT_GOOD);
	return 0;
}

@@ -255,7 +255,7 @@ target_emulate_report_target_port_groups(struct se_cmd *cmd)
	}
	transport_kunmap_data_sg(cmd);

	target_complete_cmd_with_length(cmd, GOOD, rd_len + 4);
	target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, rd_len + 4);
	return 0;
}

@@ -424,7 +424,7 @@ target_emulate_set_target_port_groups(struct se_cmd *cmd)
out:
	transport_kunmap_data_sg(cmd);
	if (!rc)
		target_complete_cmd(cmd, GOOD);
		target_complete_cmd(cmd, SAM_STAT_GOOD);
	return rc;
}

+1 −1
Original line number Diff line number Diff line
@@ -474,7 +474,7 @@ iblock_execute_zero_out(struct block_device *bdev, struct se_cmd *cmd)
	if (ret)
		return TCM_LOGICAL_UNIT_COMMUNICATION_FAILURE;

	target_complete_cmd(cmd, GOOD);
	target_complete_cmd(cmd, SAM_STAT_GOOD);
	return 0;
}

+4 −4
Original line number Diff line number Diff line
@@ -234,7 +234,7 @@ target_scsi2_reservation_release(struct se_cmd *cmd)
out_unlock:
	spin_unlock(&dev->dev_reservation_lock);
out:
	target_complete_cmd(cmd, GOOD);
	target_complete_cmd(cmd, SAM_STAT_GOOD);
	return 0;
}

@@ -297,7 +297,7 @@ target_scsi2_reservation_reserve(struct se_cmd *cmd)
	spin_unlock(&dev->dev_reservation_lock);
out:
	if (!ret)
		target_complete_cmd(cmd, GOOD);
		target_complete_cmd(cmd, SAM_STAT_GOOD);
	return ret;
}

@@ -3676,7 +3676,7 @@ target_scsi3_emulate_pr_out(struct se_cmd *cmd)
	}

	if (!ret)
		target_complete_cmd(cmd, GOOD);
		target_complete_cmd(cmd, SAM_STAT_GOOD);
	return ret;
}

@@ -4073,7 +4073,7 @@ target_scsi3_emulate_pr_in(struct se_cmd *cmd)
	}

	if (!ret)
		target_complete_cmd(cmd, GOOD);
		target_complete_cmd(cmd, SAM_STAT_GOOD);
	return ret;
}

+1 −1
Original line number Diff line number Diff line
@@ -1044,7 +1044,7 @@ static void pscsi_req_done(struct request *req, blk_status_t status)
	struct se_cmd *cmd = req->end_io_data;
	struct pscsi_plugin_task *pt = cmd->priv;
	int result = scsi_req(req)->result;
	u8 scsi_status = status_byte(result) << 1;
	u8 scsi_status = result & 0xff;

	if (scsi_status != SAM_STAT_GOOD) {
		pr_debug("PSCSI Status Byte exception at cmd: %p CDB:"
+5 −5
Original line number Diff line number Diff line
@@ -67,7 +67,7 @@ sbc_emulate_readcapacity(struct se_cmd *cmd)
		transport_kunmap_data_sg(cmd);
	}

	target_complete_cmd_with_length(cmd, GOOD, 8);
	target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, 8);
	return 0;
}

@@ -130,7 +130,7 @@ sbc_emulate_readcapacity_16(struct se_cmd *cmd)
		transport_kunmap_data_sg(cmd);
	}

	target_complete_cmd_with_length(cmd, GOOD, 32);
	target_complete_cmd_with_length(cmd, SAM_STAT_GOOD, 32);
	return 0;
}

@@ -202,14 +202,14 @@ sbc_execute_write_same_unmap(struct se_cmd *cmd)
			return ret;
	}

	target_complete_cmd(cmd, GOOD);
	target_complete_cmd(cmd, SAM_STAT_GOOD);
	return 0;
}

static sense_reason_t
sbc_emulate_noop(struct se_cmd *cmd)
{
	target_complete_cmd(cmd, GOOD);
	target_complete_cmd(cmd, SAM_STAT_GOOD);
	return 0;
}

@@ -1245,7 +1245,7 @@ sbc_execute_unmap(struct se_cmd *cmd)
err:
	transport_kunmap_data_sg(cmd);
	if (!ret)
		target_complete_cmd(cmd, GOOD);
		target_complete_cmd(cmd, SAM_STAT_GOOD);
	return ret;
}

Loading