[ofw][patch][MLX4] Fixed QP memory leak
    Leonid Keller 
    leonid at mellanox.co.il
       
    Sun Nov 23 10:15:54 PST 2008
    
    
  
Fixed QP memory leak, inserted in 1288 fix.
The driver missed release of bits in QPN bitmap, preventing using this
qpn once more.
 
Index: hw/mlx4/kernel/bus/ib/qp.c
===================================================================
--- hw/mlx4/kernel/bus/ib/qp.c (revision 1765)
+++ hw/mlx4/kernel/bus/ib/qp.c (working copy)
@@ -438,6 +438,11 @@
  if (err)
   goto err_wrid;
 
+ if (err) {
+  mlx4_qp_release_range(dev->dev, sqpn, 1);
+  goto err_wrid;
+ }
+
  /*
   * Hardware wants QPN written in big-endian order (after
   * shifting) for send doorbell.  Precompute this value to save
@@ -551,6 +556,10 @@
  mlx4_ib_unlock_cqs(send_cq, recv_cq);
 
  mlx4_qp_free(dev->dev, &qp->mqp);
+
+ if (!is_sqp(dev, qp))
+  mlx4_qp_release_range(dev->dev, qp->mqp.qpn, 1);
+
  mlx4_mtt_cleanup(dev->dev, &qp->mtt);
 
  if (is_user) {
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/ofw/attachments/20081123/f1e4645e/attachment.html>
    
    
More information about the ofw
mailing list