Hi, On 3/13/23 19:28, Greg Kroah-Hartman wrote: > 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: Hans de Goede <hdegoede@xxxxxxxxxx> > Cc: Mark Gross <markgross@xxxxxxxxxx> > Cc: platform-driver-x86@xxxxxxxxxxxxxxx > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> > --- > Note, this is a patch that is a prepatory cleanup as part of a larger > series of patches that is working on resolving some old driver core > design mistakes. It will build and apply cleanly on top of 6.3-rc2 on > its own, but I'd prefer if I could take it through my driver-core tree > so that the driver core changes can be taken through there for 6.4-rc1. Taking this upstream through the driver-core tree is fine by me: Acked-by: Hans de Goede <hdegoede@xxxxxxxxxx> Regards, Hans > drivers/platform/x86/ibm_rtl.c | 18 ++++++++++++++---- > 1 file changed, 14 insertions(+), 4 deletions(-) > > diff --git a/drivers/platform/x86/ibm_rtl.c b/drivers/platform/x86/ibm_rtl.c > index 5fc665f7d9b3..2ab7d9ac542d 100644 > --- a/drivers/platform/x86/ibm_rtl.c > +++ b/drivers/platform/x86/ibm_rtl.c > @@ -199,16 +199,26 @@ static int rtl_setup_sysfs(void) { > > ret = subsys_system_register(&rtl_subsys, NULL); > if (!ret) { > - for (i = 0; rtl_attributes[i]; i ++) > - device_create_file(rtl_subsys.dev_root, rtl_attributes[i]); > + struct device *dev_root = bus_get_dev_root(&rtl_subsys); > + > + if (dev_root) { > + for (i = 0; rtl_attributes[i]; i ++) > + device_create_file(dev_root, rtl_attributes[i]); > + put_device(dev_root); > + } > } > return ret; > } > > static void rtl_teardown_sysfs(void) { > + struct device *dev_root = bus_get_dev_root(&rtl_subsys); > int i; > - for (i = 0; rtl_attributes[i]; i ++) > - device_remove_file(rtl_subsys.dev_root, rtl_attributes[i]); > + > + if (dev_root) { > + for (i = 0; rtl_attributes[i]; i ++) > + device_remove_file(dev_root, rtl_attributes[i]); > + put_device(dev_root); > + } > bus_unregister(&rtl_subsys); > } >