summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWu Guanghao <wuguanghao3@huawei.com>2023-03-04 00:21:34 +0800
committerJes Sorensen <jes@trained-monkey.org>2023-03-08 13:54:30 -0500
commit5d2434d18b6bc71bd16678b1a6d1cc3a92f1d415 (patch)
tree67f694835e57d38f5c799b045debc5c006472896
parent50cd06b484bb99bfacdd4f9d2f8ee5e52bfc7bd3 (diff)
downloadmdadm-5d2434d18b6bc71bd16678b1a6d1cc3a92f1d415.tar.gz
super-intel.c: fix memleak in find_disk_attached_hba()
If disk_path = diskfd_to_devpath(), we need free(disk_path) before return, otherwise there will be a memory leak Signed-off-by: Wu Guanghao <wuguanghao3@huawei.com> Reviewed-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com> Acked-by: Coly Li <colyli@suse.de> Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
-rw-r--r--super-intel.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/super-intel.c b/super-intel.c
index 4a3da84..e155a8a 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -713,12 +713,12 @@ static struct sys_dev* find_disk_attached_hba(int fd, const char *devname)
for (elem = list; elem; elem = elem->next)
if (path_attached_to_hba(disk_path, elem->path))
- return elem;
+ break;
if (disk_path != devname)
free(disk_path);
- return NULL;
+ return elem;
}
static int find_intel_hba_capability(int fd, struct intel_super *super,