The Coverity checker spotted this obvious NULL pointer dereference 
caused by a wrong order of the cleanups.


Signed-off-by: Adrian Bunk <[EMAIL PROTECTED]>

--- linux-2.6.15-rc1-mm2-full/drivers/infiniband/core/mad.c.old 2005-11-20 
22:04:36.000000000 +0100
+++ linux-2.6.15-rc1-mm2-full/drivers/infiniband/core/mad.c     2005-11-20 
22:05:17.000000000 +0100
@@ -355,9 +355,9 @@
        spin_unlock_irqrestore(&port_priv->reg_lock, flags);
        kfree(reg_req);
 error3:
-       kfree(mad_agent_priv);
-error2:
        ib_dereg_mr(mad_agent_priv->agent.mr);
+error2:
+       kfree(mad_agent_priv);
 error1:
        return ret;
 }

_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

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

Reply via email to