]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
IB/core: Fix use after free in send_leave function
authorErez Shitrit <erezsh@mellanox.com>
Sun, 28 Aug 2016 07:58:30 +0000 (10:58 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 7 Oct 2016 13:21:26 +0000 (15:21 +0200)
commitfe459deb1840fe4cdb5b6a299376d7a710b87094
tree33119d3de3e0e69e2ec41a631692e9162517166b
parenta734679bdf768e370ef3d32254871ada91ad261f
IB/core: Fix use after free in send_leave function

commit 68c6bcdd8bd00394c234b915ab9b97c74104130c upstream.

The function send_leave sets the member: group->query_id
(group->query_id = ret) after calling the sa_query, but leave_handler
can be executed before the setting and it might delete the group object,
and will get a memory corruption.

Additionally, this patch gets rid of group->query_id variable which is
not used.

Fixes: faec2f7b96b5 ('IB/sa: Track multicast join/leave requests')
Signed-off-by: Erez Shitrit <erezsh@mellanox.com>
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Signed-off-by: Doug Ledford <dledford@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/infiniband/core/multicast.c