* [PATCH v3 04/15] btrfs: refactor btrfs_sysfs_add_devices_dir
[not found] <cover.1599193971.git.anand.jain@oracle.com>
@ 2020-09-04 9:25 ` Anand Jain
0 siblings, 0 replies; only message in thread
From: Anand Jain @ 2020-09-04 9:25 UTC (permalink / raw)
To: linux-btrfs; +Cc: josef
When we add device we need to add a device to the sysfs, so instead of
using the btrfs_sysfs_add_devices_dir() 2nd argument to specify whether
to add a device or all of fs_devices, call the helper function directly
btrfs_sysfs_add_device() and thus make it non static.
Signed-off-by: Anand Jain <anand.jain@oracle.com>
---
v3:
Fix conflict due to the patch [1]
[1]
btrfs: sysfs: init devices outside of the chunk_mutex
fs/btrfs/dev-replace.c | 2 +-
fs/btrfs/sysfs.c | 15 ++++++---------
fs/btrfs/sysfs.h | 3 +--
fs/btrfs/volumes.c | 2 +-
4 files changed, 9 insertions(+), 13 deletions(-)
diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c
index 580e60fe07d0..979b40754cb4 100644
--- a/fs/btrfs/dev-replace.c
+++ b/fs/btrfs/dev-replace.c
@@ -512,7 +512,7 @@ static int btrfs_dev_replace_start(struct btrfs_fs_info *fs_info,
atomic64_set(&dev_replace->num_uncorrectable_read_errors, 0);
up_write(&dev_replace->rwsem);
- ret = btrfs_sysfs_add_devices_dir(tgt_device->fs_devices, tgt_device);
+ ret = btrfs_sysfs_add_device(tgt_device);
if (ret)
btrfs_err(fs_info, "kobj add dev failed %d", ret);
diff --git a/fs/btrfs/sysfs.c b/fs/btrfs/sysfs.c
index 34899b59fcbc..713246af9137 100644
--- a/fs/btrfs/sysfs.c
+++ b/fs/btrfs/sysfs.c
@@ -1265,7 +1265,7 @@ static struct kobj_type devid_ktype = {
.release = btrfs_release_devid_kobj,
};
-static int btrfs_sysfs_add_device(struct btrfs_device *device)
+int btrfs_sysfs_add_device(struct btrfs_device *device)
{
int ret;
unsigned int nofs_flag;
@@ -1315,16 +1315,13 @@ static int btrfs_sysfs_add_device(struct btrfs_device *device)
return ret;
}
-int btrfs_sysfs_add_devices_dir(struct btrfs_fs_devices *fs_devices,
- struct btrfs_device *one_device)
+int btrfs_sysfs_add_fs_devices(struct btrfs_fs_devices *fs_devices)
{
int ret;
+ struct btrfs_device *device;
- if (one_device)
- return btrfs_sysfs_add_device(one_device);
-
- list_for_each_entry(one_device, &fs_devices->devices, dev_list) {
- ret = btrfs_sysfs_add_device(one_device);
+ list_for_each_entry(device, &fs_devices->devices, dev_list) {
+ ret = btrfs_sysfs_add_device(device);
if (ret)
return ret;
}
@@ -1419,7 +1416,7 @@ int btrfs_sysfs_add_mounted(struct btrfs_fs_info *fs_info)
struct btrfs_fs_devices *fs_devs = fs_info->fs_devices;
struct kobject *fsid_kobj = &fs_devs->fsid_kobj;
- error = btrfs_sysfs_add_devices_dir(fs_devs, NULL);
+ error = btrfs_sysfs_add_fs_devices(fs_devs);
if (error)
return error;
diff --git a/fs/btrfs/sysfs.h b/fs/btrfs/sysfs.h
index bc995b0c1889..56c29257b5a7 100644
--- a/fs/btrfs/sysfs.h
+++ b/fs/btrfs/sysfs.h
@@ -14,8 +14,7 @@ enum btrfs_feature_set {
char *btrfs_printable_features(enum btrfs_feature_set set, u64 flags);
const char *btrfs_feature_set_name(enum btrfs_feature_set set);
-int btrfs_sysfs_add_devices_dir(struct btrfs_fs_devices *fs_devices,
- struct btrfs_device *one_device);
+int btrfs_sysfs_add_device(struct btrfs_device *device);
void btrfs_sysfs_remove_devices_dir(struct btrfs_fs_devices *fs_devices,
struct btrfs_device *one_device);
int btrfs_sysfs_add_fsid(struct btrfs_fs_devices *fs_devs);
diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
index df3a31fcc4d7..f858c4d9a6ae 100644
--- a/fs/btrfs/volumes.c
+++ b/fs/btrfs/volumes.c
@@ -2606,7 +2606,7 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
mutex_unlock(&fs_info->chunk_mutex);
/* Add sysfs device entry */
- btrfs_sysfs_add_devices_dir(fs_devices, device);
+ btrfs_sysfs_add_device(device);
mutex_unlock(&fs_devices->device_list_mutex);
--
2.25.1
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2020-09-04 9:26 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <cover.1599193971.git.anand.jain@oracle.com>
2020-09-04 9:25 ` [PATCH v3 04/15] btrfs: refactor btrfs_sysfs_add_devices_dir Anand Jain
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).