aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/ulp/ipoib/ipoib.h
diff options
context:
space:
mode:
authorEli Cohen <eli@dev.mellanox.co.il>2008-07-15 02:48:52 -0400
committerRoland Dreier <rolandd@cisco.com>2008-07-15 02:48:52 -0400
commite112373fd6aa280bd2cbc0d5cc3809115325a1be (patch)
treeaaefb13c2558ab1041e63035b71ee6d114b8c906 /drivers/infiniband/ulp/ipoib/ipoib.h
parentdf8666198dd058b9498ebdbc52c61957206d30a5 (diff)
IPoIB/cm: Reduce connected mode TX object size
Since IPoIB connected mode does not NETIF_F_SG, we only have one DMA mapping per send, so we don't need a mapping[] array. Define a new struct with a single u64 mapping member and use it for the CM tx_ring. Signed-off-by: Eli Cohen <eli@mellanox.co.il> Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers/infiniband/ulp/ipoib/ipoib.h')
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib.h b/drivers/infiniband/ulp/ipoib/ipoib.h
index a89b9fbe1ef4..0281c8fecc90 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib.h
+++ b/drivers/infiniband/ulp/ipoib/ipoib.h
@@ -157,6 +157,11 @@ struct ipoib_tx_buf {
157 u64 mapping[MAX_SKB_FRAGS + 1]; 157 u64 mapping[MAX_SKB_FRAGS + 1];
158}; 158};
159 159
160struct ipoib_cm_tx_buf {
161 struct sk_buff *skb;
162 u64 mapping;
163};
164
160struct ib_cm_id; 165struct ib_cm_id;
161 166
162struct ipoib_cm_data { 167struct ipoib_cm_data {
@@ -215,7 +220,7 @@ struct ipoib_cm_tx {
215 struct net_device *dev; 220 struct net_device *dev;
216 struct ipoib_neigh *neigh; 221 struct ipoib_neigh *neigh;
217 struct ipoib_path *path; 222 struct ipoib_path *path;
218 struct ipoib_tx_buf *tx_ring; 223 struct ipoib_cm_tx_buf *tx_ring;
219 unsigned tx_head; 224 unsigned tx_head;
220 unsigned tx_tail; 225 unsigned tx_tail;
221 unsigned long flags; 226 unsigned long flags;