aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBoaz Harrosh <boazharrosh@gmail.com>2007-12-13 13:43:24 -0500
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-01-11 19:28:25 -0500
commit38ad03de3fd350e683213ddf898a7049534628a8 (patch)
treedd543bcfd0c3729be02572e816fe8fd1067ed451
parent004d6530f83bee43a55b51bb5960db96e7ae0ffa (diff)
[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: Boaz Harrosh <bharrosh@panasas.com> Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r--drivers/infiniband/ulp/iser/iscsi_iser.c1
-rw-r--r--drivers/scsi/libiscsi.c1
2 files changed, 1 insertions, 1 deletions
diff --git a/drivers/infiniband/ulp/iser/iscsi_iser.c b/drivers/infiniband/ulp/iser/iscsi_iser.c
index 2eadb6d0ad8b..a2622f4bd858 100644
--- a/drivers/infiniband/ulp/iser/iscsi_iser.c
+++ b/drivers/infiniband/ulp/iser/iscsi_iser.c
@@ -400,6 +400,7 @@ iscsi_iser_session_create(struct iscsi_transport *iscsit,
400 ctask = session->cmds[i]; 400 ctask = session->cmds[i];
401 iser_ctask = ctask->dd_data; 401 iser_ctask = ctask->dd_data;
402 ctask->hdr = (struct iscsi_cmd *)&iser_ctask->desc.iscsi_header; 402 ctask->hdr = (struct iscsi_cmd *)&iser_ctask->desc.iscsi_header;
403 ctask->hdr_max = sizeof(iser_ctask->desc.iscsi_header);
403 } 404 }
404 405
405 for (i = 0; i < session->mgmtpool_max; i++) { 406 for (i = 0; i < session->mgmtpool_max; i++) {
diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
index 0d7914fd8ef3..59365864c989 100644
--- a/drivers/scsi/libiscsi.c
+++ b/drivers/scsi/libiscsi.c
@@ -1570,7 +1570,6 @@ iscsi_session_setup(struct iscsi_transport *iscsit,
1570 if (cmd_task_size) 1570 if (cmd_task_size)
1571 ctask->dd_data = &ctask[1]; 1571 ctask->dd_data = &ctask[1];
1572 ctask->itt = cmd_i; 1572 ctask->itt = cmd_i;
1573 ctask->hdr_max = sizeof(struct iscsi_cmd);
1574 INIT_LIST_HEAD(&ctask->running); 1573 INIT_LIST_HEAD(&ctask->running);
1575 } 1574 }
1576 1575