btrfs-progs: subvol show: add support to search subvolume by rootid or uuid
authorAnand Jain <anand.jain@oracle.com>
Wed, 12 Jul 2017 22:47:11 +0000 (06:47 +0800)
committerDavid Sterba <dsterba@suse.com>
Thu, 20 Jul 2017 15:43:43 +0000 (17:43 +0200)
commit8714e458f1a21ba159effbc54bc0f6ec6ff0031b
treed71db5118278aabc22da779121a12acee6c47a92
parent18aed6a623f86f02eb342205d4fc9c7f6928805d
btrfs-progs: subvol show: add support to search subvolume by rootid or uuid

Unless the top level is mounted there is no way to know the
details of all the subvolume.  For example:

mount -o subvol=sv1/newsv1 /dev/sdb /btrfs

btrfs su list /btrfs
ID 257 gen 12 top level 5 path sv1
ID 258 gen 9 top level 257 path sv1/snap
ID 259 gen 11 top level 257 path sv1/newsv1

You can't subvol show for sv1 and sv1/snap as its paths aren't
accessible to the user unless the its top level is mounted.

This patch adds two new options to the existing btrfs subvol show
cli. They are --rootid/-r or --uuid/-u, with this now the user will
be able to look for a subvolume using the rootid OR the uuid.

./btrfs su show -r 257 /btrfs
sv1
Name:  sv1
UUID:  30129358-c69d-3e4a-a662-29509cc69c95
Parent UUID:  -
Received UUID:  -
Creation time:  2017-07-11 20:32:57 +0800
Subvolume ID:  257
Generation:  12
Gen at creation:  7
Parent ID:  5
Top level ID:  5
Flags:  -
Snapshot(s):
sv1/snap

Signed-off-by: Anand Jain <anand.jain@oracle.com>
[ minor adjustments in the help text ]
Signed-off-by: David Sterba <dsterba@suse.com>
btrfs-list.c
cmds-subvolume.c
utils.c
utils.h