[PATCH 4/8] vfio/mdev: remove mdev_{create,remove}_sysfs_files
Christoph Hellwig
hch at lst.de
Fri Jun 3 06:33:24 UTC 2022
Just fold these two trivial helpers into their only callers.
Signed-off-by: Christoph Hellwig <hch at lst.de>
---
drivers/vfio/mdev/mdev_core.c | 12 ++++++++++--
drivers/vfio/mdev/mdev_private.h | 3 ---
drivers/vfio/mdev/mdev_sysfs.c | 28 ----------------------------
3 files changed, 10 insertions(+), 33 deletions(-)
diff --git a/drivers/vfio/mdev/mdev_core.c b/drivers/vfio/mdev/mdev_core.c
index ff38c9549a55e..34b01d45cfe9f 100644
--- a/drivers/vfio/mdev/mdev_core.c
+++ b/drivers/vfio/mdev/mdev_core.c
@@ -46,7 +46,8 @@ static void mdev_device_remove_common(struct mdev_device *mdev)
{
struct mdev_parent *parent = mdev->type->parent;
- mdev_remove_sysfs_files(mdev);
+ sysfs_remove_link(&mdev->dev.kobj, "mdev_type");
+ sysfs_remove_link(mdev->type->devices_kobj, dev_name(&mdev->dev));
device_del(&mdev->dev);
lockdep_assert_held(&parent->unreg_sem);
/* Balances with device_initialize() */
@@ -193,16 +194,23 @@ int mdev_device_create(struct mdev_type *type, const guid_t *uuid)
if (ret)
goto out_del;
- ret = mdev_create_sysfs_files(mdev);
+ ret = sysfs_create_link(type->devices_kobj, &mdev->dev.kobj,
+ dev_name(&mdev->dev));
if (ret)
goto out_del;
+ ret = sysfs_create_link(&mdev->dev.kobj, &type->kobj, "mdev_type");
+ if (ret)
+ goto out_remove_type_link;
+
mdev->active = true;
dev_dbg(&mdev->dev, "MDEV: created\n");
up_read(&parent->unreg_sem);
return 0;
+out_remove_type_link:
+ sysfs_remove_link(mdev->type->devices_kobj, dev_name(&mdev->dev));
out_del:
device_del(&mdev->dev);
out_unlock:
diff --git a/drivers/vfio/mdev/mdev_private.h b/drivers/vfio/mdev/mdev_private.h
index 476cc0379ede0..277819f1ebed8 100644
--- a/drivers/vfio/mdev/mdev_private.h
+++ b/drivers/vfio/mdev/mdev_private.h
@@ -20,9 +20,6 @@ extern const struct attribute_group *mdev_device_groups[];
#define to_mdev_type(_kobj) \
container_of(_kobj, struct mdev_type, kobj)
-int mdev_create_sysfs_files(struct mdev_device *mdev);
-void mdev_remove_sysfs_files(struct mdev_device *mdev);
-
int mdev_device_create(struct mdev_type *kobj, const guid_t *uuid);
int mdev_device_remove(struct mdev_device *dev);
diff --git a/drivers/vfio/mdev/mdev_sysfs.c b/drivers/vfio/mdev/mdev_sysfs.c
index fb058755d85b8..b6bc623487f06 100644
--- a/drivers/vfio/mdev/mdev_sysfs.c
+++ b/drivers/vfio/mdev/mdev_sysfs.c
@@ -176,31 +176,3 @@ const struct attribute_group *mdev_device_groups[] = {
&mdev_device_group,
NULL
};
-
-int mdev_create_sysfs_files(struct mdev_device *mdev)
-{
- struct mdev_type *type = mdev->type;
- struct kobject *kobj = &mdev->dev.kobj;
- int ret;
-
- ret = sysfs_create_link(type->devices_kobj, kobj, dev_name(&mdev->dev));
- if (ret)
- return ret;
-
- ret = sysfs_create_link(kobj, &type->kobj, "mdev_type");
- if (ret)
- goto type_link_failed;
- return ret;
-
-type_link_failed:
- sysfs_remove_link(mdev->type->devices_kobj, dev_name(&mdev->dev));
- return ret;
-}
-
-void mdev_remove_sysfs_files(struct mdev_device *mdev)
-{
- struct kobject *kobj = &mdev->dev.kobj;
-
- sysfs_remove_link(kobj, "mdev_type");
- sysfs_remove_link(mdev->type->devices_kobj, dev_name(&mdev->dev));
-}
--
2.30.2
More information about the intel-gvt-dev
mailing list