From 3d53db94f0c522773bb83bf0119e9d19cc9c7a3d Mon Sep 17 00:00:00 2001 From: Francis Pravin Date: Fri, 10 May 2024 15:16:36 +0530 Subject: [PATCH] nvme: remove double free in persistent-event-log The pevent_collected structure uses the buffer address which is allocated using nvme_alloc_huge(). So, pevent_collected and mh.p has same address. Hence, remove _cleanup_free_ from pevent_collected to prevent double free. Signed-off-by: Francis Pravin Signed-off-by: Sathyavathi M --- nvme.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nvme.c b/nvme.c index 8c767b06..46a2399a 100644 --- a/nvme.c +++ b/nvme.c @@ -1475,8 +1475,8 @@ static int get_persistent_event_log(int argc, char **argv, "processing this persistent log page command."; const char *log_len = "number of bytes to retrieve"; - _cleanup_free_ struct nvme_persistent_event_log *pevent_collected = NULL; _cleanup_free_ struct nvme_persistent_event_log *pevent = NULL; + struct nvme_persistent_event_log *pevent_collected = NULL; _cleanup_huge_ struct nvme_mem_huge mh = { 0, }; _cleanup_nvme_dev_ struct nvme_dev *dev = NULL; enum nvme_print_flags flags; -- 2.50.1