aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/hw/cxgb4/provider.c
diff options
context:
space:
mode:
authorVipul Pandya <vipul@chelsio.com>2012-05-18 05:59:27 -0400
committerRoland Dreier <roland@purestorage.com>2012-05-18 16:22:29 -0400
commit8d81ef34b249109084b2f3c4bb826d0417ef5814 (patch)
tree77dbd13539db2053cada804c35e4cccd26f4e4c0 /drivers/infiniband/hw/cxgb4/provider.c
parent3069ee9bc451d90a2fa8c3c7ef2774744d9d3bb0 (diff)
RDMA/cxgb4: Add debugfs RDMA memory stats
Signed-off-by: Vipul Pandya <vipul@chelsio.com> Signed-off-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Roland Dreier <roland@purestorage.com>
Diffstat (limited to 'drivers/infiniband/hw/cxgb4/provider.c')
-rw-r--r--drivers/infiniband/hw/cxgb4/provider.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/infiniband/hw/cxgb4/provider.c b/drivers/infiniband/hw/cxgb4/provider.c
index be1c18f4440..8d58736f9b4 100644
--- a/drivers/infiniband/hw/cxgb4/provider.c
+++ b/drivers/infiniband/hw/cxgb4/provider.c
@@ -190,6 +190,9 @@ static int c4iw_deallocate_pd(struct ib_pd *pd)
190 PDBG("%s ibpd %p pdid 0x%x\n", __func__, pd, php->pdid); 190 PDBG("%s ibpd %p pdid 0x%x\n", __func__, pd, php->pdid);
191 c4iw_put_resource(&rhp->rdev.resource.pdid_fifo, php->pdid, 191 c4iw_put_resource(&rhp->rdev.resource.pdid_fifo, php->pdid,
192 &rhp->rdev.resource.pdid_fifo_lock); 192 &rhp->rdev.resource.pdid_fifo_lock);
193 mutex_lock(&rhp->rdev.stats.lock);
194 rhp->rdev.stats.pd.cur--;
195 mutex_unlock(&rhp->rdev.stats.lock);
193 kfree(php); 196 kfree(php);
194 return 0; 197 return 0;
195} 198}
@@ -222,6 +225,11 @@ static struct ib_pd *c4iw_allocate_pd(struct ib_device *ibdev,
222 return ERR_PTR(-EFAULT); 225 return ERR_PTR(-EFAULT);
223 } 226 }
224 } 227 }
228 mutex_lock(&rhp->rdev.stats.lock);
229 rhp->rdev.stats.pd.cur++;
230 if (rhp->rdev.stats.pd.cur > rhp->rdev.stats.pd.max)
231 rhp->rdev.stats.pd.max = rhp->rdev.stats.pd.cur;
232 mutex_unlock(&rhp->rdev.stats.lock);
225 PDBG("%s pdid 0x%0x ptr 0x%p\n", __func__, pdid, php); 233 PDBG("%s pdid 0x%0x ptr 0x%p\n", __func__, pdid, php);
226 return &php->ibpd; 234 return &php->ibpd;
227} 235}