projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2418ada
)
IB/rxe: Another fix for broken receive queue draining
author
Andrew Boyer
<andrew.boyer@dell.com>
Mon, 28 Aug 2017 20:11:57 +0000
(16:11 -0400)
committer
Doug Ledford
<dledford@redhat.com>
Mon, 28 Aug 2017 23:12:35 +0000
(19:12 -0400)
This fixes another path in rxe_requester() that might overlook stale SKBs,
preventing cleanup.
Fixes: 1217197142d1 ("rxe: fix broken receive queue draining")
Signed-off-by: Andrew Boyer <andrew.boyer@dell.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/sw/rxe/rxe_req.c
patch
|
blob
|
history
diff --git
a/drivers/infiniband/sw/rxe/rxe_req.c
b/drivers/infiniband/sw/rxe/rxe_req.c
index db7161456f45cfed62e4c9f2c6cf32f018ecca1f..d84222f9d5d2ed11356c4a3399e311a7c5364e5f 100644
(file)
--- a/
drivers/infiniband/sw/rxe/rxe_req.c
+++ b/
drivers/infiniband/sw/rxe/rxe_req.c
@@
-594,8
+594,10
@@
int rxe_requester(void *arg)
rxe_add_ref(qp);
next_wqe:
- if (unlikely(!qp->valid))
+ if (unlikely(!qp->valid)) {
+ rxe_drain_req_pkts(qp, true);
goto exit;
+ }
if (unlikely(qp->req.state == QP_STATE_ERROR)) {
rxe_drain_req_pkts(qp, true);