Commit 38ad03de authored by Boaz Harrosh's avatar Boaz Harrosh Committed by James Bottomley

[SCSI] libiscsi,iser: patch for AHS support

  - The default initialization of hdr_max is the minimum -
    sizeof(struct iscsi_cmd) - Once this patch goes into iser the default
    initialization at libiscsi can be removed.
  - This is not yet full support for AHSs at iser end. But it should be easy.
    Just allocate more space at iser_desc right after iscsi_hdr. Than
    at transmission time use ctask->hdr_len to retrieve the total
    size of all iscsi pdu headers. See previous patch at iscsi_tcp.[ch]
Signed-off-by: default avatarBoaz Harrosh <bharrosh@panasas.com>
Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@HansenPartnership.com>
parent 004d6530
...@@ -400,6 +400,7 @@ iscsi_iser_session_create(struct iscsi_transport *iscsit, ...@@ -400,6 +400,7 @@ iscsi_iser_session_create(struct iscsi_transport *iscsit,
ctask = session->cmds[i]; ctask = session->cmds[i];
iser_ctask = ctask->dd_data; iser_ctask = ctask->dd_data;
ctask->hdr = (struct iscsi_cmd *)&iser_ctask->desc.iscsi_header; ctask->hdr = (struct iscsi_cmd *)&iser_ctask->desc.iscsi_header;
ctask->hdr_max = sizeof(iser_ctask->desc.iscsi_header);
} }
for (i = 0; i < session->mgmtpool_max; i++) { for (i = 0; i < session->mgmtpool_max; i++) {
......
...@@ -1570,7 +1570,6 @@ iscsi_session_setup(struct iscsi_transport *iscsit, ...@@ -1570,7 +1570,6 @@ iscsi_session_setup(struct iscsi_transport *iscsit,
if (cmd_task_size) if (cmd_task_size)
ctask->dd_data = &ctask[1]; ctask->dd_data = &ctask[1];
ctask->itt = cmd_i; ctask->itt = cmd_i;
ctask->hdr_max = sizeof(struct iscsi_cmd);
INIT_LIST_HEAD(&ctask->running); INIT_LIST_HEAD(&ctask->running);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment