public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/2] btrfs-progs: Correctly open filesystem on image file
@ 2019-05-16 13:12 Nikolay Borisov
  2019-05-16 13:12 ` [PATCH 2/2] btrfs-progs: tests: Test fs on image files is correctly recognised Nikolay Borisov
                   ` (2 more replies)
  0 siblings, 3 replies; 9+ messages in thread
From: Nikolay Borisov @ 2019-05-16 13:12 UTC (permalink / raw)
  To: linux-btrfs; +Cc: Nikolay Borisov

When btrfs' 'filesystem' subcommand is passed path to an image file it
currently fails since the code expects the image file is going to be
recognised by libblkid (called from btrfs_scan_devices()). This is not
the case since libblkid only scan well-known locations under /dev.

Fix this by explicitly calling open_ctree which will correctly open
the image and add it to the correct btrfs_fs_devices struct. This allows
subsequent cmd_filesystem_show logic to correctly show requested
information.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
---
 cmds-filesystem.c | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/cmds-filesystem.c b/cmds-filesystem.c
index b8beec13f0e5..f55ce9b4ab85 100644
--- a/cmds-filesystem.c
+++ b/cmds-filesystem.c
@@ -771,7 +771,18 @@ static int cmd_filesystem_show(int argc, char **argv)
 		goto out;
 
 devs_only:
-	ret = btrfs_scan_devices();
+	if (type == BTRFS_ARG_REG) {
+		/*
+		 * We don't close the fs_info because it will free the device,
+		 * this is not a long-running process so it's fine
+		 */
+		if (open_ctree(search, btrfs_sb_offset(0), 0))
+			ret = 0;
+		else
+			ret = 1;
+	} else {
+		ret = btrfs_scan_devices();
+	}
 
 	if (ret) {
 		error("blkid device scan returned %d", ret);
-- 
2.7.4


^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2019-06-05 16:19 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-05-16 13:12 [PATCH 1/2] btrfs-progs: Correctly open filesystem on image file Nikolay Borisov
2019-05-16 13:12 ` [PATCH 2/2] btrfs-progs: tests: Test fs on image files is correctly recognised Nikolay Borisov
2019-06-05 16:14   ` David Sterba
2019-05-16 13:41 ` [PATCH 1/2] btrfs-progs: Correctly open filesystem on image file Qu Wenruo
2019-05-16 13:45   ` Nikolay Borisov
2019-05-16 13:54     ` Qu Wenruo
2019-05-16 14:01       ` Nikolay Borisov
2019-05-16 14:10         ` Qu Wenruo
2019-06-05 16:20 ` David Sterba

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox