From 60fd5c554de0bad991057e6528d80acb0e55148f Mon Sep 17 00:00:00 2001 From: GangCao Date: Mon, 9 Jan 2023 02:00:44 -0500 Subject: [PATCH] examples/bdevperf: check the successful status before dereferencing the pointer Issue here is that the status could be negative due to NULL pointer and in the callback, the status is not checked before dereferencing the pointer which is NULL here. Change-Id: I7240fa91d1a640556e1f27b8295921c7dd1fb57f Signed-off-by: GangCao Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/16176 Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Changpeng Liu Reviewed-by: Shuhei Matsumoto Community-CI: Mellanox Build Bot --- examples/bdev/bdevperf/bdevperf.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/bdev/bdevperf/bdevperf.c b/examples/bdev/bdevperf/bdevperf.c index f368d4ea2..ef8ba8467 100644 --- a/examples/bdev/bdevperf/bdevperf.c +++ b/examples/bdev/bdevperf/bdevperf.c @@ -623,7 +623,10 @@ static void bdevperf_channel_get_histogram_cb(void *cb_arg, int status, struct spdk_histogram_data *histogram) { struct spdk_histogram_data *job_hist = cb_arg; - spdk_histogram_data_merge(job_hist, histogram); + + if (status == 0) { + spdk_histogram_data_merge(job_hist, histogram); + } } static void