accel_engine: Fix the coredump issue if no idxd engine is found.

The coredump info can be viewed in
https://github.com/spdk/spdk/issues/1935

We face this issue because no idxd device is attached, but we
still register the hw engine by spdk_accel_hw_engine_register
in accel_engine_idxd_init.

Fixes #1935

Change-Id: I537f06e2b2923faac7f2cd6a28903e77f1f6aaa5
Signed-off-by: Ziye Yang <ziye.yang@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/7832
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>
This commit is contained in:
Ziye Yang 2021-05-11 19:33:22 +08:00 committed by Tomasz Zawadzki
parent 6b372f419d
commit 9442881ab9

View File

@ -434,6 +434,11 @@ accel_engine_idxd_init(void)
return -EINVAL;
}
if (TAILQ_EMPTY(&g_idxd_devices)) {
SPDK_NOTICELOG("no available idxd devices\n");
return -EINVAL;
}
g_idxd_initialized = true;
g_batch_max = spdk_idxd_batch_get_max();
SPDK_NOTICELOG("Accel engine updated to use IDXD DSA engine.\n");