powerpc/fsl: move to use bus_get_dev_root()
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Mar 2023 18:28:57 +0000 (19:28 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Mar 2023 14:29:47 +0000 (15:29 +0100)
Direct access to the struct bus_type dev_root pointer is going away soon
so replace that with a call to bus_get_dev_root() instead, which is what
it is there for.

Cc: Michael Ellerman <mpe@ellerman.id.au>
Cc: Nicholas Piggin <npiggin@gmail.com>
Cc: Christophe Leroy <christophe.leroy@csgroup.eu>
Cc: linuxppc-dev@lists.ozlabs.org
Link: https://lore.kernel.org/r/20230313182918.1312597-15-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/powerpc/sysdev/fsl_mpic_timer_wakeup.c

index c2baa28..147b5d8 100644 (file)
@@ -116,6 +116,7 @@ static struct device_attribute mpic_attributes = __ATTR(timer_wakeup, 0644,
 
 static int __init fsl_wakeup_sys_init(void)
 {
+       struct device *dev_root;
        int ret;
 
        fsl_wakeup = kzalloc(sizeof(struct fsl_mpic_timer_wakeup), GFP_KERNEL);
@@ -124,16 +125,26 @@ static int __init fsl_wakeup_sys_init(void)
 
        INIT_WORK(&fsl_wakeup->free_work, fsl_free_resource);
 
-       ret = device_create_file(mpic_subsys.dev_root, &mpic_attributes);
-       if (ret)
-               kfree(fsl_wakeup);
+       dev_root = bus_get_dev_root(&mpic_subsys);
+       if (dev_root) {
+               ret = device_create_file(dev_root, &mpic_attributes);
+               put_device(dev_root);
+               if (ret)
+                       kfree(fsl_wakeup);
+       }
 
        return ret;
 }
 
 static void __exit fsl_wakeup_sys_exit(void)
 {
-       device_remove_file(mpic_subsys.dev_root, &mpic_attributes);
+       struct device *dev_root;
+
+       dev_root = bus_get_dev_root(&mpic_subsys);
+       if (dev_root) {
+               device_remove_file(dev_root, &mpic_attributes);
+               put_device(dev_root);
+       }
 
        mutex_lock(&sysfs_lock);