40 lines
1.2 KiB
Diff
40 lines
1.2 KiB
Diff
From abb9a2b097c940251673eba5f074638b10ceb26e Mon Sep 17 00:00:00 2001
|
|
From: Xiao Ni <xni@redhat.com>
|
|
Date: Fri, 17 Oct 2025 17:06:13 +0800
|
|
Subject: [PATCH 71/74] mdadm/sysfs: close fd before return
|
|
|
|
It needs to close fd before returning the function.
|
|
|
|
Signed-off-by: Xiao Ni <xni@redhat.com>
|
|
---
|
|
sysfs.c | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/sysfs.c b/sysfs.c
|
|
index c030d634b155..e60adc9f549f 100644
|
|
--- a/sysfs.c
|
|
+++ b/sysfs.c
|
|
@@ -160,6 +160,7 @@ mdadm_status_t sysfs_set_memb_state_fd(int fd, memb_state_t state, int *err)
|
|
mdadm_status_t sysfs_set_memb_state(char *array_devnm, char *memb_devnm, memb_state_t state)
|
|
{
|
|
int state_fd = sysfs_open_memb_attr(array_devnm, memb_devnm, "state", O_RDWR);
|
|
+ mdadm_status_t status;
|
|
|
|
if (!is_fd_valid(state_fd)) {
|
|
pr_err("Cannot open file descriptor to %s in array %s, aborting.\n",
|
|
@@ -167,9 +168,9 @@ mdadm_status_t sysfs_set_memb_state(char *array_devnm, char *memb_devnm, memb_st
|
|
return MDADM_STATUS_ERROR;
|
|
}
|
|
|
|
- return sysfs_set_memb_state_fd(state_fd, state, NULL);
|
|
-
|
|
+ status = sysfs_set_memb_state_fd(state_fd, state, NULL);
|
|
close_fd(&state_fd);
|
|
+ return status;
|
|
}
|
|
|
|
/**
|
|
--
|
|
2.50.1
|
|
|