aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/ulp/ipoib
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-11-01 13:51:38 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-11-01 13:51:38 -0400
commitf470f8d4e702593ee1d0852871ad80373bce707b (patch)
tree85a67e65c5e5b9777639bd8f4c763a4cf8787e0e /drivers/infiniband/ulp/ipoib
parentdc47d3810cdcb4f32bfa31d50f26af97aced0638 (diff)
parent504255f8d0480cf293962adf4bc3aecac645ae71 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband: (62 commits) mlx4_core: Deprecate log_num_vlan module param IB/mlx4: Don't set VLAN in IBoE WQEs' control segment IB/mlx4: Enable 4K mtu for IBoE RDMA/cxgb4: Mark QP in error before disabling the queue in firmware RDMA/cxgb4: Serialize calls to CQ's comp_handler RDMA/cxgb3: Serialize calls to CQ's comp_handler IB/qib: Fix issue with link states and QSFP cables IB/mlx4: Configure extended active speeds mlx4_core: Add extended port capabilities support IB/qib: Hold links until tuning data is available IB/qib: Clean up checkpatch issue IB/qib: Remove s_lock around header validation IB/qib: Precompute timeout jiffies to optimize latency IB/qib: Use RCU for qpn lookup IB/qib: Eliminate divide/mod in converting idx to egr buf pointer IB/qib: Decode path MTU optimization IB/qib: Optimize RC/UC code by IB operation IPoIB: Use the right function to do DMA unmap pages RDMA/cxgb4: Use correct QID in insert_recv_cqe() RDMA/cxgb4: Make sure flush CQ entries are collected on connection close ...
Diffstat (limited to 'drivers/infiniband/ulp/ipoib')
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib_cm.c5
-rw-r--r--drivers/infiniband/ulp/ipoib/ipoib_fs.c7
2 files changed, 6 insertions, 6 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_cm.c b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
index c74548a586ea..231c2f2f52f8 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_cm.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_cm.c
@@ -84,7 +84,7 @@ static void ipoib_cm_dma_unmap_rx(struct ipoib_dev_priv *priv, int frags,
84 ib_dma_unmap_single(priv->ca, mapping[0], IPOIB_CM_HEAD_SIZE, DMA_FROM_DEVICE); 84 ib_dma_unmap_single(priv->ca, mapping[0], IPOIB_CM_HEAD_SIZE, DMA_FROM_DEVICE);
85 85
86 for (i = 0; i < frags; ++i) 86 for (i = 0; i < frags; ++i)
87 ib_dma_unmap_single(priv->ca, mapping[i + 1], PAGE_SIZE, DMA_FROM_DEVICE); 87 ib_dma_unmap_page(priv->ca, mapping[i + 1], PAGE_SIZE, DMA_FROM_DEVICE);
88} 88}
89 89
90static int ipoib_cm_post_receive_srq(struct net_device *dev, int id) 90static int ipoib_cm_post_receive_srq(struct net_device *dev, int id)
@@ -183,7 +183,7 @@ partial_error:
183 ib_dma_unmap_single(priv->ca, mapping[0], IPOIB_CM_HEAD_SIZE, DMA_FROM_DEVICE); 183 ib_dma_unmap_single(priv->ca, mapping[0], IPOIB_CM_HEAD_SIZE, DMA_FROM_DEVICE);
184 184
185 for (; i > 0; --i) 185 for (; i > 0; --i)
186 ib_dma_unmap_single(priv->ca, mapping[i], PAGE_SIZE, DMA_FROM_DEVICE); 186 ib_dma_unmap_page(priv->ca, mapping[i], PAGE_SIZE, DMA_FROM_DEVICE);
187 187
188 dev_kfree_skb_any(skb); 188 dev_kfree_skb_any(skb);
189 return NULL; 189 return NULL;
@@ -1497,6 +1497,7 @@ static void ipoib_cm_create_srq(struct net_device *dev, int max_sge)
1497{ 1497{
1498 struct ipoib_dev_priv *priv = netdev_priv(dev); 1498 struct ipoib_dev_priv *priv = netdev_priv(dev);
1499 struct ib_srq_init_attr srq_init_attr = { 1499 struct ib_srq_init_attr srq_init_attr = {
1500 .srq_type = IB_SRQT_BASIC,
1500 .attr = { 1501 .attr = {
1501 .max_wr = ipoib_recvq_size, 1502 .max_wr = ipoib_recvq_size,
1502 .max_sge = max_sge 1503 .max_sge = max_sge
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_fs.c b/drivers/infiniband/ulp/ipoib/ipoib_fs.c
index 86eae229dc49..0e2fe4631ba8 100644
--- a/drivers/infiniband/ulp/ipoib/ipoib_fs.c
+++ b/drivers/infiniband/ulp/ipoib/ipoib_fs.c
@@ -212,16 +212,15 @@ static int ipoib_path_seq_show(struct seq_file *file, void *iter_ptr)
212 gid_buf, path.pathrec.dlid ? "yes" : "no"); 212 gid_buf, path.pathrec.dlid ? "yes" : "no");
213 213
214 if (path.pathrec.dlid) { 214 if (path.pathrec.dlid) {
215 rate = ib_rate_to_mult(path.pathrec.rate) * 25; 215 rate = ib_rate_to_mbps(path.pathrec.rate);
216 216
217 seq_printf(file, 217 seq_printf(file,
218 " DLID: 0x%04x\n" 218 " DLID: 0x%04x\n"
219 " SL: %12d\n" 219 " SL: %12d\n"
220 " rate: %*d%s Gb/sec\n", 220 " rate: %8d.%d Gb/sec\n",
221 be16_to_cpu(path.pathrec.dlid), 221 be16_to_cpu(path.pathrec.dlid),
222 path.pathrec.sl, 222 path.pathrec.sl,
223 10 - ((rate % 10) ? 2 : 0), 223 rate / 1000, rate % 1000);
224 rate / 10, rate % 10 ? ".5" : "");
225 } 224 }
226 225
227 seq_putc(file, '\n'); 226 seq_putc(file, '\n');