btrfs-progs: Fix btrfs fi show by uuid and label
authorJustin Maggard <jmaggard10@gmail.com>
Tue, 23 Dec 2014 19:34:52 +0000 (11:34 -0800)
committerDavid Sterba <dsterba@suse.cz>
Mon, 29 Dec 2014 16:13:58 +0000 (17:13 +0100)
Commit 8be2fff (btrfs-progs: apply realpath for btrfs fi
show when mount point is given) changed the behavior of
btrfs fi show to return an error if the call to realpath()
failed.  This broke the ability to specify a filesystem by
uuid or label.

So let's not consider a failed call to realpath() as an
error.  If the user really specified a bad device, just
return nothing like we did before.

Signed-off-by: Justin Maggard <jmaggard10@gmail.com>
Reviewed-by: Gui Hecheng <guihc.fnst@cn.fujitsu.com>
Signed-off-by: David Sterba <dsterba@suse.cz>
cmds-filesystem.c

index 8f037dd..a654e6f 100644 (file)
@@ -901,13 +901,8 @@ static int cmd_show(int argc, char **argv)
                 *     realpath do  /mnt/btrfs/  => /mnt/btrfs
                 *     which shall be recognized by btrfs_scan_kernel()
                 */
-               if (!realpath(search, path)) {
-                       fprintf(stderr, "ERROR: Could not show %s: %s\n",
-                                       search, strerror(errno));
-                       return 1;
-               }
-
-               search = path;
+               if (realpath(search, path))
+                       search = path;
 
                /*
                 * Needs special handling if input arg is block dev And if