summaryrefslogtreecommitdiff
path: root/utils.c
diff options
context:
space:
mode:
authorChris Mason <chris.mason@oracle.com>2012-02-21 15:33:20 -0500
committerChris Mason <chris.mason@oracle.com>2012-02-21 15:35:13 -0500
commit32eff71182a6aff67324357572308c225b2d5e34 (patch)
treea3facae60d6b292d211046ee8f6dbc01dd1cc2a3 /utils.c
parentaf00db292e74b22c51cd95f1db5db2a594804d09 (diff)
Btrfs: use /proc/partitions scanning for btrfs_scan_for_fsid
btrfs_scan_for_fsid is used by open_ctree and by mkfs when it is checking for mounted devices. It currently scans all of /dev, which is rarely the right answer. Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'utils.c')
-rw-r--r--utils.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/utils.c b/utils.c
index 178d1b9d..f0dd5270 100644
--- a/utils.c
+++ b/utils.c
@@ -1034,7 +1034,12 @@ fail:
int btrfs_scan_for_fsid(struct btrfs_fs_devices *fs_devices, u64 total_devs,
int run_ioctls)
{
- return btrfs_scan_one_dir("/dev", run_ioctls);
+ int ret;
+
+ ret = btrfs_scan_block_devices(run_ioctls);
+ if (ret)
+ ret = btrfs_scan_one_dir("/dev", run_ioctls);
+ return ret;
}
int btrfs_device_already_in_root(struct btrfs_root *root, int fd,