-stable review patch. If anyone has any objections, please let us know. ------------------ From: Adrian Bunk The Coverity checker spotted this obvious use-after-free caused by a wrong order of the cleanups. Signed-off-by: Adrian Bunk Acked-by: Roland Dreier Signed-off-by: Chris Wright Signed-off-by: Greg Kroah-Hartman --- drivers/infiniband/core/mad.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- linux-2.6.14.3.orig/drivers/infiniband/core/mad.c +++ linux-2.6.14.3/drivers/infiniband/core/mad.c @@ -356,9 +356,9 @@ error4: 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; } --