diff options
author | Adrian Bunk <bunk@stusta.de> | 2005-11-28 12:46:00 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2005-12-14 15:42:54 -0800 |
commit | 2d6eac6c4fdaa69656d66c80754d267be233cc3f (patch) | |
tree | ed9abc6ceb0ccde1bc4c58e778ff27b0a947f4e6 | |
parent | d2b0e84d195a341c1cc5b45ec2098ee23bc1fe9d (diff) |
[PATCH] drivers/infiniband/core/mad.c: fix a use-after-free
The Coverity checker spotted this obvious use-after-free
caused by a wrong order of the cleanups.
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Acked-by: Roland Dreier <rolandd@cisco.com>
Signed-off-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r-- | drivers/infiniband/core/mad.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/infiniband/core/mad.c b/drivers/infiniband/core/mad.c index a14ca87fda18..96855fceb250 100644 --- a/drivers/infiniband/core/mad.c +++ b/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; } |