On Fri, Sep 2, 2016 at 11:46 PM, Alexey Khoroshilov <[email protected]> wrote: > There is skb_clone(skb, GFP_KERNEL) in spinlock context > in rxe_rcv_mcast_pkt(). > > Found by Linux Driver Verification project (linuxtesting.org). > > Signed-off-by: Alexey Khoroshilov <[email protected]> > --- > drivers/infiniband/sw/rxe/rxe_recv.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/infiniband/sw/rxe/rxe_recv.c > b/drivers/infiniband/sw/rxe/rxe_recv.c > index 3d464c23e08b..144d2f129fcd 100644 > --- a/drivers/infiniband/sw/rxe/rxe_recv.c > +++ b/drivers/infiniband/sw/rxe/rxe_recv.c > @@ -312,7 +312,7 @@ static void rxe_rcv_mcast_pkt(struct rxe_dev *rxe, struct > sk_buff *skb) > * make a copy of the skb to post to the next qp > */ > skb_copy = (mce->qp_list.next != &mcg->qp_list) ? > - skb_clone(skb, GFP_KERNEL) : NULL; > + skb_clone(skb, GFP_ATOMIC) : NULL; > > pkt->qp = qp; > rxe_add_ref(qp); > -- > 2.7.4 > Acked-by: Moni Shoua <[email protected]>

