diff options
| author | Cheng Xu <chengyou@linux.alibaba.com> | 2026-07-30 20:43:53 +0800 |
|---|---|---|
| committer | Leon Romanovsky <leon@kernel.org> | 2026-08-05 11:00:28 -0400 |
| commit | 98df2aee1459ee1c62c70cbe9b370d2a532aea36 (patch) | |
| tree | 8061afc74b0a657c4f4a7b65b536ae0a39c562e5 /tools/perf/scripts/python/parallel-perf.py | |
| parent | 6aad80a1d4e70cf6adac73e12e15abee3100dbe7 (diff) | |
RDMA/erdma: Hold CQ references when processing EQ events
EQ handlers look up CQs from dev->cq_xa and invoke CQ completion or
error callbacks outside the xarray lock. erdma_destroy_cq() can erase the
CQ from the xarray and free its queue buffer and doorbell record while a
previously scheduled EQ handler is still using the CQ.
Add a CQ refcount and take a reference under the xarray lock with
refcount_inc_not_zero(). Remove the CQ from the xarray before dropping
the destroy-path reference, then wait for in-flight EQ users before
releasing CQ resources.
Fixes: 155055771704 ("RDMA/erdma: Add verbs implementation")
Signed-off-by: Cheng Xu <chengyou@linux.alibaba.com>
Link: https://patch.msgid.link/20260730124357.12976-1-chengyou@linux.alibaba.com
Signed-off-by: Leon Romanovsky <leon@kernel.org>
Diffstat (limited to 'tools/perf/scripts/python/parallel-perf.py')
0 files changed, 0 insertions, 0 deletions
