Fix access to non-initialized CM_ID object in ibcore.
The attempt to join multicast group without ensuring that CMA device exists will lead to the following crash reported by syzkaller. Linux commit: 7688f2c3bbf55e52388e37ac5d63ca471a7712e1 MFC after: 1 week Sponsored by: Mellanox Technologies
This commit is contained in:
parent
91f0e6e1d8
commit
ed222171a9
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=336375
@ -4064,6 +4064,9 @@ int rdma_join_multicast(struct rdma_cm_id *id, struct sockaddr *addr,
|
||||
struct cma_multicast *mc;
|
||||
int ret;
|
||||
|
||||
if (!id->device)
|
||||
return -EINVAL;
|
||||
|
||||
id_priv = container_of(id, struct rdma_id_private, id);
|
||||
if (!cma_comp(id_priv, RDMA_CM_ADDR_BOUND) &&
|
||||
!cma_comp(id_priv, RDMA_CM_ADDR_RESOLVED))
|
||||
|
Loading…
Reference in New Issue
Block a user