RDMA/erdma: Support non-sleeping erdma_post_cmd_wait()
authorBoshi Yu <boshiyu@linux.alibaba.com>
Thu, 26 Dec 2024 08:41:10 +0000 (16:41 +0800)
committerLeon Romanovsky <leon@kernel.org>
Mon, 30 Dec 2024 18:42:52 +0000 (13:42 -0500)
commit26981e688ca896e9310e1918d104a79cb140ce85
treea2443496e53e673571315edd43bf24c54871d491
parent3761e0ad79c137d61baf5f1518e4795f35fe8159
RDMA/erdma: Support non-sleeping erdma_post_cmd_wait()

Several scenarios require posting commands to the cmdq in a non-sleepable
context. For example, the cm_alloc_msg() might call erdma_create_ah()
while still holding a spinlock. So we add support for non-sleeping
erdma_post_cmd_wait().

Reviewed-by: Cheng Xu <chengyou@linux.alibaba.com>
Signed-off-by: Boshi Yu <boshiyu@linux.alibaba.com>
Link: https://patch.msgid.link/20241226084141.74823-4-boshiyu@linux.alibaba.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
drivers/infiniband/hw/erdma/erdma.h
drivers/infiniband/hw/erdma/erdma_cmdq.c
drivers/infiniband/hw/erdma/erdma_eq.c
drivers/infiniband/hw/erdma/erdma_main.c
drivers/infiniband/hw/erdma/erdma_qp.c
drivers/infiniband/hw/erdma/erdma_verbs.c