summaryrefslogtreecommitdiffstats
path: root/drivers/infiniband/core/fmr_pool.c
diff options
context:
space:
mode:
authorDoron Tsur2015-10-11 14:58:17 +0200
committerDoug Ledford2015-10-21 21:43:12 +0200
commit0ca81a2840f77855bbad1b9f172c545c4dc9e6a4 (patch)
tree4831bbc2111ad328b50563b827936a1022d25dd4 /drivers/infiniband/core/fmr_pool.c
parentIB/cma: Use inner P_Key to determine netdev (diff)
downloadkernel-qcow2-linux-0ca81a2840f77855bbad1b9f172c545c4dc9e6a4.tar.gz
kernel-qcow2-linux-0ca81a2840f77855bbad1b9f172c545c4dc9e6a4.tar.xz
kernel-qcow2-linux-0ca81a2840f77855bbad1b9f172c545c4dc9e6a4.zip
IB/cm: Fix rb-tree duplicate free and use-after-free
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>
Diffstat (limited to 'drivers/infiniband/core/fmr_pool.c')
0 files changed, 0 insertions, 0 deletions