On Wed, Oct 14, 2020 at 2:44 AM Bob Pearson <rpearsonhpe@xxxxxxxxx> wrote: > > If skb_clone is unable to allocate memory for a new > sk_buff this is not detected by the current code. > > Check for a NULL return and continue. This is similar to > other errors in this loop over QPs attached to the multicast address > and consistent with the unreliable UD transport. > > Fixes: e7ec96fc7932f ("RDMA/rxe: Fix skb lifetime in rxe_rcv_mcast_pkt()") Addresses-Coverity-ID: 1497804: Null pointer dereferences (NULL_RETURNS) Thanks Zhu Yanjun > Signed-off-by: Bob Pearson <rpearson@xxxxxxx> > --- > drivers/infiniband/sw/rxe/rxe_recv.c | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/drivers/infiniband/sw/rxe/rxe_recv.c b/drivers/infiniband/sw/rxe/rxe_recv.c > index 11f3daf20768..c9984a28eecc 100644 > --- a/drivers/infiniband/sw/rxe/rxe_recv.c > +++ b/drivers/infiniband/sw/rxe/rxe_recv.c > @@ -271,6 +271,9 @@ static void rxe_rcv_mcast_pkt(struct rxe_dev *rxe, struct sk_buff *skb) > else > per_qp_skb = skb; > > + if (unlikely(!per_qp_skb)) > + continue; > + > per_qp_pkt = SKB_TO_PKT(per_qp_skb); > per_qp_pkt->qp = qp; > rxe_add_ref(qp); > -- > 2.25.1 >