From: Eric Sandeen Date: Wed, 20 Aug 2014 22:23:20 +0000 (-0500) Subject: btrfs-progs: don't fall back to recursive /dev scan X-Git-Tag: upstream/4.16.1~2689 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=1c1ac30d93799529f06b713c223c9460482be7f9;p=platform%2Fupstream%2Fbtrfs-progs.git btrfs-progs: don't fall back to recursive /dev scan If we didn't find what we are looking for in /proc/partitions, we're not going to find it by scanning every node under /dev, either. But that's just what btrfs_scan_for_fsid() does. Remove that fallback; at that point btrfs_scan_for_fsid() just calls scan_for_btrfs(), so remove the wrapper & call it directly. Side note: so, these paths always use /proc/partitions, not libblkid. Userspace-intiated scans default to libblkid. I presume this is part of the design, and intentional? Anyway, not changing it now! Signed-off-by: Eric Sandeen Reviewed-by: Anand Jain Signed-off-by: David Sterba --- diff --git a/disk-io.c b/disk-io.c index 34c0a97..e0e7701 100644 --- a/disk-io.c +++ b/disk-io.c @@ -1002,7 +1002,7 @@ int btrfs_scan_fs_devices(int fd, const char *path, } if (total_devs != 1) { - ret = btrfs_scan_for_fsid(run_ioctl); + ret = scan_for_btrfs(BTRFS_SCAN_PROC, run_ioctl); if (ret) return ret; } diff --git a/utils.c b/utils.c index c4f2a00..cb9e514 100644 --- a/utils.c +++ b/utils.c @@ -1148,7 +1148,7 @@ int check_mounted_where(int fd, const char *file, char *where, int size, /* scan other devices */ if (is_btrfs && total_devs > 1) { - if ((ret = btrfs_scan_for_fsid(!BTRFS_UPDATE_KERNEL))) + if ((ret = scan_for_btrfs(BTRFS_SCAN_PROC, !BTRFS_UPDATE_KERNEL))) return ret; } @@ -1336,16 +1336,6 @@ fail: return ret; } -int btrfs_scan_for_fsid(int run_ioctls) -{ - int ret; - - ret = scan_for_btrfs(BTRFS_SCAN_PROC, run_ioctls); - if (ret) - ret = scan_for_btrfs(BTRFS_SCAN_DEV, run_ioctls); - return ret; -} - int btrfs_device_already_in_root(struct btrfs_root *root, int fd, int super_offset) {