drivers: core: remove device_link argument from class_compat_[create|remove]_link
authorHeiner Kallweit <hkallweit1@gmail.com>
Thu, 19 Dec 2024 21:48:17 +0000 (22:48 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 10 Jan 2025 14:42:20 +0000 (15:42 +0100)
After 7e722083fcc3 ("i2c: Remove I2C_COMPAT config symbol and related
code") there's no caller left passing a non-null device_link argument.
So remove this argument to simplify the code.

Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com>
Link: https://lore.kernel.org/r/db49131d-fd79-4f23-93f2-0ab541a345fa@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/base/class.c
drivers/vfio/mdev/mdev_core.c
include/linux/device/class.h

index 70ee6a7ba5a3746b5a182c6101b5c085b424d01d..2526c57d924e532c26466e0c8cfe6a9042f5bbf6 100644 (file)
@@ -601,30 +601,10 @@ EXPORT_SYMBOL_GPL(class_compat_unregister);
  *                           a bus device
  * @cls: the compatibility class
  * @dev: the target bus device
- * @device_link: an optional device to which a "device" link should be created
  */
-int class_compat_create_link(struct class_compat *cls, struct device *dev,
-                            struct device *device_link)
+int class_compat_create_link(struct class_compat *cls, struct device *dev)
 {
-       int error;
-
-       error = sysfs_create_link(cls->kobj, &dev->kobj, dev_name(dev));
-       if (error)
-               return error;
-
-       /*
-        * Optionally add a "device" link (typically to the parent), as a
-        * class device would have one and we want to provide as much
-        * backwards compatibility as possible.
-        */
-       if (device_link) {
-               error = sysfs_create_link(&dev->kobj, &device_link->kobj,
-                                         "device");
-               if (error)
-                       sysfs_remove_link(cls->kobj, dev_name(dev));
-       }
-
-       return error;
+       return sysfs_create_link(cls->kobj, &dev->kobj, dev_name(dev));
 }
 EXPORT_SYMBOL_GPL(class_compat_create_link);
 
@@ -633,14 +613,9 @@ EXPORT_SYMBOL_GPL(class_compat_create_link);
  *                           a bus device
  * @cls: the compatibility class
  * @dev: the target bus device
- * @device_link: an optional device to which a "device" link was previously
- *              created
  */
-void class_compat_remove_link(struct class_compat *cls, struct device *dev,
-                             struct device *device_link)
+void class_compat_remove_link(struct class_compat *cls, struct device *dev)
 {
-       if (device_link)
-               sysfs_remove_link(&dev->kobj, "device");
        sysfs_remove_link(cls->kobj, dev_name(dev));
 }
 EXPORT_SYMBOL_GPL(class_compat_remove_link);
index ed4737de4528961f93d37a4aaed76b42570aa81c..f2e686f8f1ef53c35196c7ba733194fd2af2fdf9 100644 (file)
@@ -76,7 +76,7 @@ int mdev_register_parent(struct mdev_parent *parent, struct device *dev,
        if (ret)
                return ret;
 
-       ret = class_compat_create_link(mdev_bus_compat_class, dev, NULL);
+       ret = class_compat_create_link(mdev_bus_compat_class, dev);
        if (ret)
                dev_warn(dev, "Failed to create compatibility class link\n");
 
@@ -98,7 +98,7 @@ void mdev_unregister_parent(struct mdev_parent *parent)
        dev_info(parent->dev, "MDEV: Unregistering\n");
 
        down_write(&parent->unreg_sem);
-       class_compat_remove_link(mdev_bus_compat_class, parent->dev, NULL);
+       class_compat_remove_link(mdev_bus_compat_class, parent->dev);
        device_for_each_child(parent->dev, NULL, mdev_device_remove_cb);
        parent_remove_sysfs_files(parent);
        up_write(&parent->unreg_sem);
index aa67d473681612f24a4569bf82fe5f91237d5a50..45ee3a634999331d4f9efa4c85bb1d36918eb27b 100644 (file)
@@ -82,10 +82,8 @@ bool class_is_registered(const struct class *class);
 struct class_compat;
 struct class_compat *class_compat_register(const char *name);
 void class_compat_unregister(struct class_compat *cls);
-int class_compat_create_link(struct class_compat *cls, struct device *dev,
-                            struct device *device_link);
-void class_compat_remove_link(struct class_compat *cls, struct device *dev,
-                             struct device *device_link);
+int class_compat_create_link(struct class_compat *cls, struct device *dev);
+void class_compat_remove_link(struct class_compat *cls, struct device *dev);
 
 void class_dev_iter_init(struct class_dev_iter *iter, const struct class *class,
                         const struct device *start, const struct device_type *type);