summaryrefslogtreecommitdiff
path: root/btrfs-show-super.c
diff options
context:
space:
mode:
authorQu Wenruo <quwenruo@cn.fujitsu.com>2015-11-02 16:34:19 +0800
committerDavid Sterba <dsterba@suse.com>2015-11-02 15:45:52 +0100
commitc328e0db4a6759941d6c44e08aa78e5b1cd16bef (patch)
tree07193928228adfba7cfdbe01027d21e42aff31b3 /btrfs-show-super.c
parentb1c222321e096f1dd1284699d9366b10cbfcb636 (diff)
btrfs-progs: show-super: Add option to print superblock at given bytenr
Add '-s <sb_bytenr>' option to show superblock at given bytenr. This is very useful to debug non-standard btrfs, like debuging the 1st stage btrfs of btrfs-convert. Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com> [ minor updates in docs ] Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'btrfs-show-super.c')
-rw-r--r--btrfs-show-super.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/btrfs-show-super.c b/btrfs-show-super.c
index 27414c88..d8ad69e2 100644
--- a/btrfs-show-super.c
+++ b/btrfs-show-super.c
@@ -48,6 +48,7 @@ static void print_usage(void)
fprintf(stderr, "\t-a : print information of all superblocks\n");
fprintf(stderr, "\t-i <super_mirror> : specify which mirror to print out\n");
fprintf(stderr, "\t-F : attempt to dump superblocks with bad magic\n");
+ fprintf(stderr, "\t-s <bytenr> : specify alternate superblock offset\n");
fprintf(stderr, "%s\n", PACKAGE_STRING);
}
@@ -63,7 +64,7 @@ int main(int argc, char **argv)
u64 arg;
u64 sb_bytenr = btrfs_sb_offset(0);
- while ((opt = getopt(argc, argv, "fFai:")) != -1) {
+ while ((opt = getopt(argc, argv, "fFai:s:")) != -1) {
switch (opt) {
case 'i':
arg = arg_strtou64(optarg);
@@ -86,6 +87,10 @@ int main(int argc, char **argv)
case 'F':
force = 1;
break;
+ case 's':
+ sb_bytenr = arg_strtou64(optarg);
+ all = 0;
+ break;
default:
print_usage();
exit(1);