David Sterba
2013-Nov-27 17:18 UTC
[PATCH] btrfs-progs: call endmntent in btrfs_scan_kernel
btrfs_scan_kernel() does a getmntent() but never releases the
filedescriptor it gets back from that.
Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=64711
Reported-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
---
cmds-filesystem.c | 14 +++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)
diff --git a/cmds-filesystem.c b/cmds-filesystem.c
index 8296fa1ebb44..8e4754f84647 100644
--- a/cmds-filesystem.c
+++ b/cmds-filesystem.c
@@ -449,11 +449,12 @@ static int btrfs_scan_kernel(void *search)
ret = get_fs_info(mnt->mnt_dir, &fs_info_arg,
&dev_info_arg);
if (ret)
- return ret;
+ goto out;
if (get_label_mounted(mnt->mnt_dir, label)) {
kfree(dev_info_arg);
- return 1;
+ ret = 1;
+ goto out;
}
if (search && !match_search_item_kernel(fs_info_arg.fsid,
mnt->mnt_dir, label, search)) {
@@ -472,11 +473,14 @@ static int btrfs_scan_kernel(void *search)
close(fd);
kfree(dev_info_arg);
if (search)
- return 0;
+ ret = 0;
}
if (search)
- return 1;
- return 0;
+ ret = 1;
+
+out:
+ endmntent(f);
+ return ret;
}
static const char * const cmd_show_usage[] = {
--
1.8.4.3
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs"
in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html