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> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
parent
53ee1bccf9
commit
37cd29521a
|
@ -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[] = {
|
||||
|
|
Loading…
Reference in New Issue