From: Vishal Thanki <[EMAIL PROTECTED]>

Properly account for freed 4K PBL.

Signed-off-by: Vishal Thanki <[EMAIL PROTECTED]>
Signed-off-by: Sweta Bhatt <[EMAIL PROTECTED]>
Signed-off-by: Chien Tung <[EMAIL PROTECTED]>
--
Roland,

Please consider these 4 patches for 2.6.28.

 drivers/infiniband/hw/nes/nes_verbs.c |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/drivers/infiniband/hw/nes/nes_verbs.c 
b/drivers/infiniband/hw/nes/nes_verbs.c
index 932e56f..cd09493 100644
--- a/drivers/infiniband/hw/nes/nes_verbs.c
+++ b/drivers/infiniband/hw/nes/nes_verbs.c
@@ -538,14 +538,9 @@ static int nes_dealloc_fmr(struct ib_fmr *ibfmr)
        struct nes_fmr *nesfmr = to_nesfmr(nesmr);
        struct nes_vnic *nesvnic = to_nesvnic(ibfmr->device);
        struct nes_device *nesdev = nesvnic->nesdev;
-       struct nes_mr temp_nesmr = *nesmr;
+       struct nes_adapter *nesadapter = nesdev->nesadapter;
        int i = 0;
 
-       temp_nesmr.ibmw.device = ibfmr->device;
-       temp_nesmr.ibmw.pd = ibfmr->pd;
-       temp_nesmr.ibmw.rkey = ibfmr->rkey;
-       temp_nesmr.ibmw.uobject = NULL;
-
        /* free the resources */
        if (nesfmr->leaf_pbl_cnt == 0) {
                /* single PBL case */
@@ -562,7 +557,17 @@ static int nes_dealloc_fmr(struct ib_fmr *ibfmr)
                                nesfmr->root_vpbl.pbl_pbase);
        }
 
-       return nes_dealloc_mw(&temp_nesmr.ibmw);
+       nesmr->ibmw.device = ibfmr->device;
+       nesmr->ibmw.pd = ibfmr->pd;
+       nesmr->ibmw.rkey = ibfmr->rkey;
+       nesmr->ibmw.uobject = NULL;
+
+       if (nesfmr->nesmr.pbl_4k) {
+               nesadapter->free_4kpbl += nesfmr->nesmr.pbls_used;
+               BUG_ON(nesadapter->free_4kpbl > nesadapter->max_4kpbl);
+       }
+
+       return nes_dealloc_mw(&nesmr->ibmw);
 }
 
 
_______________________________________________
general mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to