Commit 975c1df9 authored by Alexey Marchuk's avatar Alexey Marchuk Committed by Jim Harris
Browse files

examples/accel_perf: Fix double free



If memory allocation in _init_thread failed, we free
worker->task_base. We also free it in unregister_worker
which is part of normal shutdown process. To prevent
double free, set task_base to NULL after free in
_init_thread

Signed-off-by: default avatarAlexey Marchuk <alexeymar@nvidia.com>
Change-Id: I878205adea7e7f0eda31ef7a72884ee1ce242a1e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/23139


Reviewed-by: default avatarJim Harris <jim.harris@samsung.com>
Reviewed-by: default avatarKonrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: default avatarShuhei Matsumoto <smatsumoto@nvidia.com>
Community-CI: Mellanox Build Bot
Tested-by: default avatarSPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: default avatarBen Walker <ben@nvidia.com>
parent 6e947066
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
/*   SPDX-License-Identifier: BSD-3-Clause
 *   Copyright (C) 2020 Intel Corporation.
 *   Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES.
 *   All rights reserved.
 */

@@ -1162,6 +1163,7 @@ error:

	_free_task_buffers_in_pool(worker);
	free(worker->task_base);
	worker->task_base = NULL;
no_worker:
	shutdown_cb();
	g_rc = -1;