0f5a873e6e
We encountered a coredump in running accel_perf with only one ioat/idxd device enabled: accel_perf: accel_engine.c:973: accel_engine_create_cb: Assertion `accel_ch->engine_ch != NULL' failed. Aborted (core dumped) In identify_accel_engine_usage, we try to get an accel channel, read capabilities of it, and free it. However, the hw destory_cb is not yet called before running _init_thread because the hw destroy_cb is delayed by accel_engine_destroy_cb, which is already a delayed event itself. So, we simply check the first available channel's capabilities in _init_thread to avoid such partial-free error. Signed-off-by: Wenliang Wang <wangwenliang.1995@bytedance.com> Change-Id: I96ae0408568ed6cd2cb9b74fde406a821943616e Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/10426 Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com> Community-CI: Mellanox Build Bot Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Jim Harris <james.r.harris@intel.com> Reviewed-by: Paul Luse <paul.e.luse@intel.com> |
||
---|---|---|
.. | ||
accel | ||
bdev | ||
blob | ||
idxd | ||
interrupt_tgt | ||
ioat | ||
nvme | ||
nvmf | ||
sock | ||
util | ||
vmd | ||
Makefile |