From 1d141f4adb7734657b248ff13e05cc3be2cfb87d Mon Sep 17 00:00:00 2001 From: Shuhei Matsumoto Date: Sun, 19 Apr 2020 15:53:48 +0900 Subject: [PATCH] ut/nvme: Fix nightly test warning of test_nvme_completion_poll_cb() by allocating status dynamically MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix the following warning by allocating status dynamically. In function ‘nvme_completion_poll_cb’, inlined from ‘test_nvme_completion_poll_cb’ at nvme_ut.c:546:2: /var/jenkins/workspace/unittest-nightly-autotest/spdk/lib/nvme/nvme.c:92:3: warning: attempt to free a non-heap object ‘status’ [-Wfree-nonheap-object] 92 | free(status); | ^ Signed-off-by: Shuhei Matsumoto Change-Id: I321b88414f431c8c18617d3ee882b8ab851a70fa Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1940 Community-CI: Mellanox Build Bot Community-CI: Broadcom CI Tested-by: SPDK CI Jenkins Reviewed-by: Jim Harris Reviewed-by: Tomasz Zawadzki Reviewed-by: Ben Walker --- test/unit/lib/nvme/nvme.c/nvme_ut.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/test/unit/lib/nvme/nvme.c/nvme_ut.c b/test/unit/lib/nvme/nvme.c/nvme_ut.c index 9624adaf3..2dc301235 100644 --- a/test/unit/lib/nvme/nvme.c/nvme_ut.c +++ b/test/unit/lib/nvme/nvme.c/nvme_ut.c @@ -537,16 +537,20 @@ test_spdk_nvme_detach(void) static void test_nvme_completion_poll_cb(void) { - struct nvme_completion_poll_status status; + struct nvme_completion_poll_status *status; struct spdk_nvme_cpl cpl; - memset(&status, 0x0, sizeof(status)); + status = calloc(1, sizeof(*status)); + SPDK_CU_ASSERT_FATAL(status != NULL); + memset(&cpl, 0xff, sizeof(cpl)); - nvme_completion_poll_cb(&status, &cpl); - CU_ASSERT(status.done == true); - CU_ASSERT(memcmp(&cpl, &status.cpl, + nvme_completion_poll_cb(status, &cpl); + CU_ASSERT(status->done == true); + CU_ASSERT(memcmp(&cpl, &status->cpl, sizeof(struct spdk_nvme_cpl)) == 0); + + free(status); } /* stub callback used by test_nvme_user_copy_cmd_complete() */