diff options
author | Goffredo Baroncelli <kreijack@inwind.it> | 2024-02-08 21:19:22 +0100 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2024-02-20 11:40:08 +0100 |
commit | 900f21b4f1612bc861f6254ace8368c6b6120698 (patch) | |
tree | 9ed9c9856ddfee91489ad3efbb4ac23ecf6140bf | |
parent | 43dbe63dba6614d59bbcd3dc526038bafdc86834 (diff) | |
download | btrfs-progs-900f21b4f1612bc861f6254ace8368c6b6120698.tar.gz |
btrfs-progs: replace open_path_or_dev_mnt with btrfs_open_mnt_fd
For historical reasons the helpers [btrfs_]open_dir... return also
the 'DIR *dirstream' value when a directory is opened.
However this is never used. So avoid calling diropen() and return
only the fd.
Replace open_path_or_dev_mnt() with btrfs_open_mnt_fd() removing
any reference to the unused/useless dirstream variables.
Signed-off-by: Goffredo Baroncelli <kreijack@libero.it>
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | cmds/device.c | 5 | ||||
-rw-r--r-- | cmds/replace.c | 7 | ||||
-rw-r--r-- | cmds/scrub.c | 15 |
3 files changed, 11 insertions, 16 deletions
diff --git a/cmds/device.c b/cmds/device.c index cc201ff9..5be76595 100644 --- a/cmds/device.c +++ b/cmds/device.c @@ -717,7 +717,6 @@ static int cmd_device_stats(const struct cmd_struct *cmd, int argc, char **argv) bool free_table = false; bool tabular = false; __u64 flags = 0; - DIR *dirstream = NULL; struct format_ctx fctx; optind = 0; @@ -753,7 +752,7 @@ static int cmd_device_stats(const struct cmd_struct *cmd, int argc, char **argv) dev_path = argv[optind]; - fdmnt = open_path_or_dev_mnt(dev_path, &dirstream, 1); + fdmnt = btrfs_open_mnt_fd(dev_path, true); if (fdmnt < 0) return 1; @@ -839,7 +838,7 @@ static int cmd_device_stats(const struct cmd_struct *cmd, int argc, char **argv) out: free(di_args); - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); if (free_table) table_free(table); diff --git a/cmds/replace.c b/cmds/replace.c index 171a72b4..f1db9477 100644 --- a/cmds/replace.c +++ b/cmds/replace.c @@ -136,7 +136,6 @@ static int cmd_replace_start(const struct cmd_struct *cmd, bool force_using_targetdev = false; u64 dstdev_block_count; bool do_not_background = false; - DIR *dirstream = NULL; u64 srcdev_size; u64 dstdev_size; bool enqueue = false; @@ -184,7 +183,7 @@ static int cmd_replace_start(const struct cmd_struct *cmd, return 1; path = argv[optind + 2]; - fdmnt = open_path_or_dev_mnt(path, &dirstream, 1); + fdmnt = btrfs_open_mnt_fd(path, true); if (fdmnt < 0) goto leave_with_error; @@ -200,7 +199,7 @@ static int cmd_replace_start(const struct cmd_struct *cmd, if (ret != 0) { if (ret < 0) error("unable to check status of exclusive operation: %m"); - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); goto leave_with_error; } @@ -348,7 +347,7 @@ static int cmd_replace_start(const struct cmd_struct *cmd, goto leave_with_error; } } - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); return 0; leave_with_error: diff --git a/cmds/scrub.c b/cmds/scrub.c index e105ecb2..039a67d1 100644 --- a/cmds/scrub.c +++ b/cmds/scrub.c @@ -1269,7 +1269,6 @@ static int scrub_start(const struct cmd_struct *cmd, int argc, char **argv, pthread_mutex_t spc_write_mutex = PTHREAD_MUTEX_INITIALIZER; void *terr; u64 devid; - DIR *dirstream = NULL; bool force = false; bool nothing_to_resume = false; @@ -1326,7 +1325,7 @@ static int scrub_start(const struct cmd_struct *cmd, int argc, char **argv, path = argv[optind]; - fdmnt = open_path_or_dev_mnt(path, &dirstream, !do_quiet); + fdmnt = btrfs_open_mnt_fd(path, !do_quiet); if (fdmnt < 0) return 1; @@ -1698,7 +1697,7 @@ out: if (sock_path[0]) unlink(sock_path); } - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); if (err) return 1; @@ -1751,7 +1750,6 @@ static int cmd_scrub_cancel(const struct cmd_struct *cmd, int argc, char **argv) char *path; int ret; int fdmnt = -1; - DIR *dirstream = NULL; clean_args_no_options(cmd, argc, argv); @@ -1760,7 +1758,7 @@ static int cmd_scrub_cancel(const struct cmd_struct *cmd, int argc, char **argv) path = argv[optind]; - fdmnt = open_path_or_dev_mnt(path, &dirstream, 1); + fdmnt = btrfs_open_mnt_fd(path, true); if (fdmnt < 0) { ret = 1; goto out; @@ -1782,7 +1780,7 @@ static int cmd_scrub_cancel(const struct cmd_struct *cmd, int argc, char **argv) pr_verbose(LOG_DEFAULT, "scrub cancelled\n"); out: - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); return ret; } static DEFINE_SIMPLE_COMMAND(scrub_cancel, "cancel"); @@ -1841,7 +1839,6 @@ static int cmd_scrub_status(const struct cmd_struct *cmd, int argc, char **argv) char fsid[BTRFS_UUID_UNPARSED_SIZE]; int fdres = -1; int err = 0; - DIR *dirstream = NULL; unit_mode = get_unit_mode_from_arg(&argc, argv, 0); @@ -1864,7 +1861,7 @@ static int cmd_scrub_status(const struct cmd_struct *cmd, int argc, char **argv) path = argv[optind]; - fdmnt = open_path_or_dev_mnt(path, &dirstream, 1); + fdmnt = btrfs_open_mnt_fd(path, true); if (fdmnt < 0) return 1; @@ -1978,7 +1975,7 @@ out: free(si_args); if (fdres > -1) close(fdres); - close_file_or_dir(fdmnt, dirstream); + close(fdmnt); return !!err; } |