linux-btrfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Anand Jain <anand.jain@oracle.com>
To: linux-btrfs@vger.kernel.org
Cc: dsterba@suse.com
Subject: [PATCH v3 13/16] btrfs-progs: inspect-internal logical-resolve: use global verbose option
Date: Fri, 12 Jun 2020 19:26:38 +0800	[thread overview]
Message-ID: <20200612112638.4018-1-anand.jain@oracle.com> (raw)
In-Reply-To: <1574678357-22222-14-git-send-email-anand.jain@oracle.com>

Transpire global --verbose option down to the
btrfs inspect-internal logical-resolve sub-command.

Command btrfs inspect-internal logical-resolve provides local verbose
option this patch makes it enable-able by using the global --verbose
option.

Suggested-by: David Sterba <dsterba@suse.com>
Signed-off-by: Anand Jain <anand.jain@oracle.com>
---
v3: update help and documentation
v2: Use new helper function bconf_be_verbose()

 Documentation/btrfs-inspect-internal.asciidoc |  1 +
 cmds/inspect.c                                | 25 ++++++++-----------
 2 files changed, 12 insertions(+), 14 deletions(-)

diff --git a/Documentation/btrfs-inspect-internal.asciidoc b/Documentation/btrfs-inspect-internal.asciidoc
index e8d4c861603d..c0009e2e5382 100644
--- a/Documentation/btrfs-inspect-internal.asciidoc
+++ b/Documentation/btrfs-inspect-internal.asciidoc
@@ -152,6 +152,7 @@ resolve paths to all files at given 'logical' address in the linear filesystem s
 skip the path resolving and print the inodes instead
 -v::::
 verbose mode, print count of returned paths and all ioctl() return values
+This option is merged to the global verbose option
 -o::::
 ignore offsets, find all references to an extent instead of a single block.
 Requires kernel support for the V2 ioctl (added in 4.15). The results might need
diff --git a/cmds/inspect.c b/cmds/inspect.c
index b0d3c8102400..bbbac4431ac7 100644
--- a/cmds/inspect.c
+++ b/cmds/inspect.c
@@ -38,7 +38,7 @@ static const char * const inspect_cmd_group_usage[] = {
 	NULL
 };
 
-static int __ino_to_path_fd(u64 inum, int fd, int verbose, const char *prepend)
+static int __ino_to_path_fd(u64 inum, int fd, const char *prepend)
 {
 	int ret;
 	int i;
@@ -117,8 +117,7 @@ static int cmd_inspect_inode_resolve(const struct cmd_struct *cmd,
 	if (fd < 0)
 		return 1;
 
-	ret = __ino_to_path_fd(arg_strtou64(argv[optind]), fd,
-			       bconf.verbose, argv[optind+1]);
+	ret = __ino_to_path_fd(arg_strtou64(argv[optind]), fd, argv[optind+1]);
 	close_file_or_dir(fd, dirstream);
 	return !!ret;
 
@@ -137,6 +136,8 @@ static const char * const cmd_inspect_logical_resolve_usage[] = {
 	"            container's size in case it is not enough to read all the ",
 	"            resolved results. The max value one can set is 64k with the",
 	"            v1 ioctl. Sizes over 64k will use the v2 ioctl (kernel 4.15+)",
+	HELPINFO_INSERT_GLOBALS,
+	HELPINFO_INSERT_VERBOSE,
 	NULL
 };
 
@@ -146,7 +147,6 @@ static int cmd_inspect_logical_resolve(const struct cmd_struct *cmd,
 	int ret;
 	int fd;
 	int i;
-	int verbose = 0;
 	int getpath = 1;
 	int bytes_left;
 	struct btrfs_ioctl_logical_ino_args loi = { 0 };
@@ -169,7 +169,7 @@ static int cmd_inspect_logical_resolve(const struct cmd_struct *cmd,
 			getpath = 0;
 			break;
 		case 'v':
-			verbose = 1;
+			bconf_be_verbose();
 			break;
 		case 'o':
 			flags |= BTRFS_LOGICAL_INO_ARGS_IGNORE_OFFSET;
@@ -211,13 +211,11 @@ static int cmd_inspect_logical_resolve(const struct cmd_struct *cmd,
 		goto out;
 	}
 
-	if (verbose)
-		printf("ioctl ret=%d, total_size=%llu, bytes_left=%lu, "
-			"bytes_missing=%lu, cnt=%d, missed=%d\n",
-			ret, size,
-			(unsigned long)inodes->bytes_left,
-			(unsigned long)inodes->bytes_missing,
-			inodes->elem_cnt, inodes->elem_missed);
+	pr_verbose(1,
+"ioctl ret=%d, total_size=%llu, bytes_left=%lu, bytes_missing=%lu, cnt=%d, missed=%d\n",
+		   ret, size, (unsigned long)inodes->bytes_left,
+		   (unsigned long)inodes->bytes_missing, inodes->elem_cnt,
+		   inodes->elem_missed);
 
 	bytes_left = sizeof(full_path);
 	ret = snprintf(full_path, bytes_left, "%s/", argv[optind+1]);
@@ -262,8 +260,7 @@ static int cmd_inspect_logical_resolve(const struct cmd_struct *cmd,
 					goto out;
 				}
 			}
-			ret = __ino_to_path_fd(inum, path_fd, verbose,
-						full_path);
+			ret = __ino_to_path_fd(inum, path_fd, full_path);
 			if (path_fd != fd)
 				close_file_or_dir(path_fd, dirs);
 		} else {
-- 
2.25.1


  reply	other threads:[~2020-06-12 11:26 UTC|newest]

Thread overview: 47+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-25 10:39 [PATCH v2 00/16] btrfs-progs: global verbose and quiet option Anand Jain
2019-11-25 10:39 ` [PATCH 01/16] btrfs-progs: split global help HELPINFO_INSERT_GLOBALS Anand Jain
2019-11-25 10:39 ` [PATCH v2 02/16] btrfs-progs: add global verbose and quiet options and helper functions Anand Jain
2020-06-12 10:56   ` [PATCH v3 " Anand Jain
2020-06-12 15:39     ` David Sterba
2020-06-12 22:48       ` Anand Jain
2020-06-23 16:44         ` David Sterba
2020-06-29 15:36     ` David Sterba
2019-11-25 10:39 ` [PATCH v2 03/16] btrfs-progs: send: use global verbose and quiet options Anand Jain
2020-06-12 10:58   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 04/16] btrfs-progs: receive: " Anand Jain
2020-06-12 11:24   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 05/16] btrfs-progs: subvolume delete: use global verbose option Anand Jain
2020-06-12 11:24   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 06/16] btrfs-progs: filesystem defragment: " Anand Jain
2020-06-08  6:31   ` Anand Jain
2020-06-11 16:56     ` [PATCH v3 " Anand Jain
2020-06-12 11:25   ` [PATCH v4 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 07/16] btrfs-progs: balance start: " Anand Jain
2020-06-12 11:25   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 08/16] btrfs-progs: balance status: " Anand Jain
2020-06-12 11:25   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 09/16] btrfs-progs: rescue chunk-recover: " Anand Jain
2020-06-12 11:25   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 10/16] btrfs-progs: rescue super-recover: " Anand Jain
2020-06-12 11:25   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 11/16] btrfs-progs: restore: " Anand Jain
2020-06-12 11:26   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 12/16] btrfs-progs: inspect-internal inode-resolve: use global verbose Anand Jain
2020-06-12 11:26   ` [PATCH v3 " Anand Jain
2019-11-25 10:39 ` [PATCH v2 13/16] btrfs-progs: inspect-internal logical-resolve: use global verbose option Anand Jain
2020-06-12 11:26   ` Anand Jain [this message]
2019-11-25 10:39 ` [PATCH 14/16] btrfs-progs: refactor btrfs_scan_devices() to accept verbose argument Anand Jain
2019-11-25 10:39 ` [PATCH v2 15/16] btrfs-progs: device scan: add verbose option Anand Jain
2019-11-25 10:39 ` [PATCH 16/16] btrfs-progs: device scan: add quiet option Anand Jain
2019-12-20  5:36 ` [PATCH v2 00/16] btrfs-progs: global verbose and " Anand Jain
2020-01-14  6:14 ` Anand Jain
2020-01-14 11:40   ` David Sterba
2020-03-28  5:45     ` Anand Jain
2020-05-20 10:01       ` Anand Jain
2020-06-05  9:24         ` David Sterba
2020-06-05 10:12           ` Anand Jain
2020-06-10 10:17             ` David Sterba
2020-06-11 18:13           ` Anand Jain
2020-06-11 16:36 ` [PATCH v3 02/16] btrfs-progs: add global verbose and quiet options and helper functions Anand Jain
2020-06-11 16:39 ` [PATCH v3 11/16] btrfs-progs: restore: use global verbose option Anand Jain
2020-06-11 16:41 ` [PATCH v2 16/16] btrfs-progs: device scan: add quiet option Anand Jain

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200612112638.4018-1-anand.jain@oracle.com \
    --to=anand.jain@oracle.com \
    --cc=dsterba@suse.com \
    --cc=linux-btrfs@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).