Commit 327f18cc authored by Anand Jain's avatar Anand Jain Committed by David Sterba

btrfs: move pr_info into device_list_add

Commit 60999ca4 ("btrfs: make device scan less noisy")
adds return value 1 to device_list_add(), so that parent function can
call pr_info only when new device is added. Move the pr_info() part
into device_list_add() so that this function can be kept simple.
Signed-off-by: default avatarAnand Jain <anand.jain@oracle.com>
Reviewed-by: default avatarJosef Bacik <jbacik@fb.com>
Signed-off-by: default avatarDavid Sterba <dsterba@suse.com>
parent d8367db3
...@@ -724,8 +724,7 @@ static int btrfs_open_one_device(struct btrfs_fs_devices *fs_devices, ...@@ -724,8 +724,7 @@ static int btrfs_open_one_device(struct btrfs_fs_devices *fs_devices,
* Add new device to list of registered devices * Add new device to list of registered devices
* *
* Returns: * Returns:
* 1 - first time device is seen * 0 - device already known or newly added
* 0 - device already known
* < 0 - error * < 0 - error
*/ */
static noinline int device_list_add(const char *path, static noinline int device_list_add(const char *path,
...@@ -735,7 +734,6 @@ static noinline int device_list_add(const char *path, ...@@ -735,7 +734,6 @@ static noinline int device_list_add(const char *path,
struct btrfs_device *device; struct btrfs_device *device;
struct btrfs_fs_devices *fs_devices; struct btrfs_fs_devices *fs_devices;
struct rcu_string *name; struct rcu_string *name;
int ret = 0;
u64 found_transid = btrfs_super_generation(disk_super); u64 found_transid = btrfs_super_generation(disk_super);
fs_devices = find_fsid(disk_super->fsid); fs_devices = find_fsid(disk_super->fsid);
...@@ -775,9 +773,16 @@ static noinline int device_list_add(const char *path, ...@@ -775,9 +773,16 @@ static noinline int device_list_add(const char *path,
fs_devices->num_devices++; fs_devices->num_devices++;
mutex_unlock(&fs_devices->device_list_mutex); mutex_unlock(&fs_devices->device_list_mutex);
ret = 1;
device->fs_devices = fs_devices; device->fs_devices = fs_devices;
btrfs_free_stale_devices(path, device); btrfs_free_stale_devices(path, device);
if (disk_super->label[0])
pr_info("BTRFS: device label %s devid %llu transid %llu %s\n",
disk_super->label, devid, found_transid, path);
else
pr_info("BTRFS: device fsid %pU devid %llu transid %llu %s\n",
disk_super->fsid, devid, found_transid, path);
} else if (!device->name || strcmp(device->name->str, path)) { } else if (!device->name || strcmp(device->name->str, path)) {
/* /*
* When FS is already mounted. * When FS is already mounted.
...@@ -838,7 +843,7 @@ static noinline int device_list_add(const char *path, ...@@ -838,7 +843,7 @@ static noinline int device_list_add(const char *path,
*fs_devices_ret = fs_devices; *fs_devices_ret = fs_devices;
return ret; return 0;
} }
static struct btrfs_fs_devices *clone_fs_devices(struct btrfs_fs_devices *orig) static struct btrfs_fs_devices *clone_fs_devices(struct btrfs_fs_devices *orig)
...@@ -1177,7 +1182,6 @@ int btrfs_scan_one_device(const char *path, fmode_t flags, void *holder, ...@@ -1177,7 +1182,6 @@ int btrfs_scan_one_device(const char *path, fmode_t flags, void *holder,
struct page *page; struct page *page;
int ret; int ret;
u64 devid; u64 devid;
u64 transid;
u64 total_devices; u64 total_devices;
u64 bytenr; u64 bytenr;
...@@ -1203,19 +1207,9 @@ int btrfs_scan_one_device(const char *path, fmode_t flags, void *holder, ...@@ -1203,19 +1207,9 @@ int btrfs_scan_one_device(const char *path, fmode_t flags, void *holder,
} }
devid = btrfs_stack_device_id(&disk_super->dev_item); devid = btrfs_stack_device_id(&disk_super->dev_item);
transid = btrfs_super_generation(disk_super);
total_devices = btrfs_super_num_devices(disk_super); total_devices = btrfs_super_num_devices(disk_super);
ret = device_list_add(path, disk_super, devid, fs_devices_ret); ret = device_list_add(path, disk_super, devid, fs_devices_ret);
if (ret > 0) {
if (disk_super->label[0])
pr_info("BTRFS: device label %s ", disk_super->label);
else
pr_info("BTRFS: device fsid %pU ", disk_super->fsid);
pr_cont("devid %llu transid %llu %s\n", devid, transid, path);
ret = 0;
}
if (!ret && fs_devices_ret) if (!ret && fs_devices_ret)
(*fs_devices_ret)->total_devices = total_devices; (*fs_devices_ret)->total_devices = total_devices;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment