forked from luck/tmp_suning_uos_patched
[SCSI] iscsi_tcp: remove unused r2t handling
libiscsi's iscsi_prep_data_out_pdu now handles what iscsi_tcp's helpers were so we can remove iscsi_tcp's helpers. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
parent
e5a7efeffd
commit
e2bac7c55e
|
@ -553,48 +553,6 @@ iscsi_data_in(struct iscsi_conn *conn, struct iscsi_task *task)
|
|||
return 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* iscsi_solicit_data_init - initialize first Data-Out
|
||||
* @conn: iscsi connection
|
||||
* @task: scsi command task
|
||||
* @r2t: R2T info
|
||||
*
|
||||
* Notes:
|
||||
* Initialize first Data-Out within this R2T sequence and finds
|
||||
* proper data_offset within this SCSI command.
|
||||
*
|
||||
* This function is called with connection lock taken.
|
||||
**/
|
||||
static void
|
||||
iscsi_solicit_data_init(struct iscsi_conn *conn, struct iscsi_task *task,
|
||||
struct iscsi_r2t_info *r2t)
|
||||
{
|
||||
struct iscsi_data *hdr;
|
||||
|
||||
hdr = &r2t->dtask.hdr;
|
||||
memset(hdr, 0, sizeof(struct iscsi_data));
|
||||
hdr->ttt = r2t->ttt;
|
||||
hdr->datasn = cpu_to_be32(r2t->solicit_datasn);
|
||||
r2t->solicit_datasn++;
|
||||
hdr->opcode = ISCSI_OP_SCSI_DATA_OUT;
|
||||
memcpy(hdr->lun, task->hdr->lun, sizeof(hdr->lun));
|
||||
hdr->itt = task->hdr->itt;
|
||||
hdr->exp_statsn = r2t->exp_statsn;
|
||||
hdr->offset = cpu_to_be32(r2t->data_offset);
|
||||
if (r2t->data_length > conn->max_xmit_dlength) {
|
||||
hton24(hdr->dlength, conn->max_xmit_dlength);
|
||||
r2t->data_count = conn->max_xmit_dlength;
|
||||
hdr->flags = 0;
|
||||
} else {
|
||||
hton24(hdr->dlength, r2t->data_length);
|
||||
r2t->data_count = r2t->data_length;
|
||||
hdr->flags = ISCSI_FLAG_CMD_FINAL;
|
||||
}
|
||||
conn->dataout_pdus_cnt++;
|
||||
|
||||
r2t->sent = 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* iscsi_r2t_rsp - iSCSI R2T Response processing
|
||||
* @conn: iscsi connection
|
||||
|
@ -1311,55 +1269,6 @@ iscsi_tcp_send_linear_data_prepare(struct iscsi_conn *conn, void *data,
|
|||
data, len, NULL, tx_hash);
|
||||
}
|
||||
|
||||
/**
|
||||
* iscsi_solicit_data_cont - initialize next Data-Out
|
||||
* @conn: iscsi connection
|
||||
* @task: scsi command task
|
||||
* @r2t: R2T info
|
||||
* @left: bytes left to transfer
|
||||
*
|
||||
* Notes:
|
||||
* Initialize next Data-Out within this R2T sequence and continue
|
||||
* to process next Scatter-Gather element(if any) of this SCSI command.
|
||||
*
|
||||
* Called under connection lock.
|
||||
**/
|
||||
static int
|
||||
iscsi_solicit_data_cont(struct iscsi_conn *conn, struct iscsi_task *task,
|
||||
struct iscsi_r2t_info *r2t)
|
||||
{
|
||||
struct iscsi_data *hdr;
|
||||
int new_offset, left;
|
||||
|
||||
BUG_ON(r2t->data_length - r2t->sent < 0);
|
||||
left = r2t->data_length - r2t->sent;
|
||||
if (left == 0)
|
||||
return 0;
|
||||
|
||||
hdr = &r2t->dtask.hdr;
|
||||
memset(hdr, 0, sizeof(struct iscsi_data));
|
||||
hdr->ttt = r2t->ttt;
|
||||
hdr->datasn = cpu_to_be32(r2t->solicit_datasn);
|
||||
r2t->solicit_datasn++;
|
||||
hdr->opcode = ISCSI_OP_SCSI_DATA_OUT;
|
||||
memcpy(hdr->lun, task->hdr->lun, sizeof(hdr->lun));
|
||||
hdr->itt = task->hdr->itt;
|
||||
hdr->exp_statsn = r2t->exp_statsn;
|
||||
new_offset = r2t->data_offset + r2t->sent;
|
||||
hdr->offset = cpu_to_be32(new_offset);
|
||||
if (left > conn->max_xmit_dlength) {
|
||||
hton24(hdr->dlength, conn->max_xmit_dlength);
|
||||
r2t->data_count = conn->max_xmit_dlength;
|
||||
} else {
|
||||
hton24(hdr->dlength, left);
|
||||
r2t->data_count = left;
|
||||
hdr->flags = ISCSI_FLAG_CMD_FINAL;
|
||||
}
|
||||
|
||||
conn->dataout_pdus_cnt++;
|
||||
return 1;
|
||||
}
|
||||
|
||||
static int iscsi_tcp_pdu_init(struct iscsi_task *task,
|
||||
unsigned int offset, unsigned int count)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user