powerpc/sysfs: move to use bus_get_dev_root()
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 13 Mar 2023 18:28:54 +0000 (19:28 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 17 Mar 2023 14:29:34 +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: David Hildenbrand <david@redhat.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: linuxppc-dev@lists.ozlabs.org
Link: https://lore.kernel.org/r/20230313182918.1312597-12-gregkh@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/powerpc/kernel/sysfs.c

index ef9a617..0f39a6b 100644 (file)
@@ -217,13 +217,18 @@ static DEVICE_ATTR(dscr_default, 0600,
 static void __init sysfs_create_dscr_default(void)
 {
        if (cpu_has_feature(CPU_FTR_DSCR)) {
+               struct device *dev_root;
                int cpu;
 
                dscr_default = spr_default_dscr;
                for_each_possible_cpu(cpu)
                        paca_ptrs[cpu]->dscr_default = dscr_default;
 
-               device_create_file(cpu_subsys.dev_root, &dev_attr_dscr_default);
+               dev_root = bus_get_dev_root(&cpu_subsys);
+               if (dev_root) {
+                       device_create_file(dev_root, &dev_attr_dscr_default);
+                       put_device(dev_root);
+               }
        }
 }
 #endif /* CONFIG_PPC64 */
@@ -746,7 +751,12 @@ static DEVICE_ATTR(svm, 0444, show_svm, NULL);
 
 static void __init create_svm_file(void)
 {
-       device_create_file(cpu_subsys.dev_root, &dev_attr_svm);
+       struct device *dev_root = bus_get_dev_root(&cpu_subsys);
+
+       if (dev_root) {
+               device_create_file(dev_root, &dev_attr_svm);
+               put_device(dev_root);
+       }
 }
 #else
 static void __init create_svm_file(void)