lib/nvmf: fix async_events index
When data_local.num_async_events > SPDK_NVMF_MIGR_MAX_PENDING_AERS, data_local.async_events was already indexed by 256, and it was out of bounds. Signed-off-by: Liu Xiaodong <xiaodong.liu@intel.com> Change-Id: I15cfdeb9bc165de0c73fbc9171b0ce6d8689c0aa Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14666 Reviewed-by: Changpeng Liu <changpeng.liu@intel.com> Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com> Tested-by: SPDK CI Jenkins <sys_sgci@intel.com> Community-CI: Mellanox Build Bot
This commit is contained in:
parent
2371a070c8
commit
b6bb252e23
@ -1948,11 +1948,12 @@ spdk_nvmf_ctrlr_save_migr_data(struct spdk_nvmf_ctrlr *ctrlr,
|
||||
data_local.num_aer_cids = ctrlr->nr_aer_reqs;
|
||||
|
||||
STAILQ_FOREACH_SAFE(event, &ctrlr->async_events, link, event_tmp) {
|
||||
data_local.async_events[data_local.num_async_events++].raw = event->event.raw;
|
||||
if (data_local.num_async_events > SPDK_NVMF_MIGR_MAX_PENDING_AERS) {
|
||||
if (data_local.num_async_events + 1 > SPDK_NVMF_MIGR_MAX_PENDING_AERS) {
|
||||
SPDK_ERRLOG("ctrlr %p has too many pending AERs\n", ctrlr);
|
||||
break;
|
||||
}
|
||||
|
||||
data_local.async_events[data_local.num_async_events++].raw = event->event.raw;
|
||||
}
|
||||
|
||||
for (i = 0; i < ctrlr->nr_aer_reqs; i++) {
|
||||
|
Loading…
Reference in New Issue
Block a user