On 9/26/23 20:22, Chengfeng Ye wrote: > It seems to me that read_cqe.done could be executed under softirq > context, It doesn't though. > as done callbacks always do, and it acquires rsp_wr_wait_lock > along the following call chain. The CQ polling context is IB_POLL_WORKQUEUE, which does not run in softirq.