diff options
author | Karen Xie <kxie@chelsio.com> | 2009-02-14 00:38:54 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2009-02-21 21:29:37 -0500 |
commit | f62d0896e67195d4407ef81c6f77a92f72a63e88 (patch) | |
tree | 3b305f041b9ae2c569bce4ac410e8e655b72d7fd /drivers/scsi/cxgb3i/cxgb3i_ddp.h | |
parent | 949847d195d2bb86f61c289a57edb9207c4a3bbf (diff) |
[SCSI] cxgb3i: Outgoing pdus need to observe skb's MAX_SKB_FRAGS
Need to make sure the outgoing pdu can fit into a single skb. When
calulating the max. outgoing pdu payload size, take into consideration
of
- data can be held in the skb's fragment list, assume 512 bytes per
fragment, and
- data can be held in the headroom.
Signed-off-by: Karen Xie <kxie@chelsio.com>
Reviewed-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/cxgb3i/cxgb3i_ddp.h')
-rw-r--r-- | drivers/scsi/cxgb3i/cxgb3i_ddp.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/scsi/cxgb3i/cxgb3i_ddp.h b/drivers/scsi/cxgb3i/cxgb3i_ddp.h index 5c7c4d95c493..99d7014d614d 100644 --- a/drivers/scsi/cxgb3i/cxgb3i_ddp.h +++ b/drivers/scsi/cxgb3i/cxgb3i_ddp.h | |||
@@ -85,8 +85,9 @@ struct cxgb3i_ddp_info { | |||
85 | struct sk_buff **gl_skb; | 85 | struct sk_buff **gl_skb; |
86 | }; | 86 | }; |
87 | 87 | ||
88 | #define ISCSI_PDU_NONPAYLOAD_LEN 312 /* bhs(48) + ahs(256) + digest(8) */ | ||
88 | #define ULP2_MAX_PKT_SIZE 16224 | 89 | #define ULP2_MAX_PKT_SIZE 16224 |
89 | #define ULP2_MAX_PDU_PAYLOAD (ULP2_MAX_PKT_SIZE - ISCSI_PDU_NONPAYLOAD_MAX) | 90 | #define ULP2_MAX_PDU_PAYLOAD (ULP2_MAX_PKT_SIZE - ISCSI_PDU_NONPAYLOAD_LEN) |
90 | #define PPOD_PAGES_MAX 4 | 91 | #define PPOD_PAGES_MAX 4 |
91 | #define PPOD_PAGES_SHIFT 2 /* 4 pages per pod */ | 92 | #define PPOD_PAGES_SHIFT 2 /* 4 pages per pod */ |
92 | 93 | ||