Re: [syzbot] [rdma?] INFO: trying to register non-static key in skb_dequeue (2)

From: Guoqing Jiang
Date: Mon May 22 2023 - 22:26:10 EST




On 5/23/23 10:13, syzbot wrote:
Hello,

syzbot tried to test the proposed patch but the build/boot failed:

failed to apply patch:
checking file drivers/infiniband/sw/rxe/rxe_qp.c
patch: **** unexpected end of file in patch



Tested on:

commit: 56518a60 RDMA/hns: Modify the value of long message lo..
git tree: git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git for-rc
dashboard link: https://syzkaller.appspot.com/bug?extid=eba589d8f49c73d356da
compiler:
patch: https://syzkaller.appspot.com/x/patch.diff?x=132bea5a280000


Sorry, let me attach the temp patch.

#syz test: git://git.kernel.org/pub/scm/linux/kernel/git/rdma/rdma.git for-rc
diff --git a/drivers/infiniband/sw/rxe/rxe_qp.c b/drivers/infiniband/sw/rxe/rxe_qp.c
index 61a2eb77d999..17ed41309756 100644
--- a/drivers/infiniband/sw/rxe/rxe_qp.c
+++ b/drivers/infiniband/sw/rxe/rxe_qp.c
@@ -758,19 +758,21 @@ static void rxe_qp_do_cleanup(struct work_struct *work)
del_timer_sync(&qp->rnr_nak_timer);
}

- if (qp->resp.task.func)
+ /* flush out any receive wr's or pending requests */
+ if (qp->resp.task.func) {
rxe_cleanup_task(&qp->resp.task);
+ rxe_responder(qp);
+ }

- if (qp->req.task.func)
+ if (qp->req.task.func) {
rxe_cleanup_task(&qp->req.task);
+ rxe_requester(qp);
+ }

- if (qp->comp.task.func)
+ if (qp->comp.task.func) {
rxe_cleanup_task(&qp->comp.task);
-
- /* flush out any receive wr's or pending requests */
- rxe_requester(qp);
- rxe_completer(qp);
- rxe_responder(qp);
+ rxe_completer(qp);
+ }

if (qp->sq.queue)
rxe_queue_cleanup(qp->sq.queue);