diff options
| author | Doron Tsur <doront@mellanox.com> | 2015-10-11 15:58:17 +0300 |
|---|---|---|
| committer | Moyster <oysterized@gmail.com> | 2016-08-26 20:46:34 +0200 |
| commit | 339c850ff71a6a1adbb0883a607b267502c66aa9 (patch) | |
| tree | b1b9a7de06aa0668b427c139820db1217ef38b9e /drivers/usb/class | |
| parent | 91da3221dca35ef276987320e3a0125bf09398f7 (diff) | |
IB/cm: Fix rb-tree duplicate free and use-after-free
commit 0ca81a2840f77855bbad1b9f172c545c4dc9e6a4 upstream.
ib_send_cm_sidr_rep could sometimes erase the node from the sidr
(depending on errors in the process). Since ib_send_cm_sidr_rep is
called both from cm_sidr_req_handler and cm_destroy_id, cm_id_priv
could be either erased from the rb_tree twice or not erased at all.
Fixing that by making sure it's erased only once before freeing
cm_id_priv.
Fixes: a977049dacde ('[PATCH] IB: Add the kernel CM implementation')
Signed-off-by: Doron Tsur <doront@mellanox.com>
Signed-off-by: Matan Barak <matanb@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Stefan Guendhoer <stefan@guendhoer.com>
Diffstat (limited to 'drivers/usb/class')
0 files changed, 0 insertions, 0 deletions
