It's observed that no more completion occurs after a few incorrect posts. Actually, it will block the polling. we can easily reproduce it by the below pattern. a. post correct RDMA_WRITE b. poll completion event while true { c. post incorrect RDMA_WRITE(wrong rkey for example) d. poll completion event <<<< block after 2 incorrect RDMA_WRITE posts } V4 add new patch from Bob where it make requester stop executing qp operation as soon as possible. Both blktests and pyverbs tests are passed fine. Bob Pearson (1): RDMA/rxe: Split qp state for requester and completer Li Zhijian (3): RDMA/rxe: Update wqe_index for each wqe error completion RDMA/rxe: Generate error completion for error requester QP state RDMA/rxe: Fix typo in comment drivers/infiniband/sw/rxe/rxe_comp.c | 6 +++--- drivers/infiniband/sw/rxe/rxe_qp.c | 5 +++++ drivers/infiniband/sw/rxe/rxe_req.c | 16 +++++++++++++++- drivers/infiniband/sw/rxe/rxe_task.c | 2 +- drivers/infiniband/sw/rxe/rxe_verbs.h | 1 + 5 files changed, 25 insertions(+), 5 deletions(-) -- 2.31.1