diff options
| author | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
|---|---|---|
| committer | Dmitry Torokhov <[email protected]> | 2023-08-30 16:06:38 -0700 | 
| commit | 1ac731c529cd4d6adbce134754b51ff7d822b145 (patch) | |
| tree | 143ab3f35ca5f3b69f583c84e6964b17139c2ec1 /drivers/platform/x86/ibm_rtl.c | |
| parent | 07b4c950f27bef0362dc6ad7ee713aab61d58149 (diff) | |
| parent | 54116d442e001e1b6bd482122043b1870998a1f3 (diff) | |
Merge branch 'next' into for-linus
Prepare input updates for 6.6 merge window.
Diffstat (limited to 'drivers/platform/x86/ibm_rtl.c')
| -rw-r--r-- | drivers/platform/x86/ibm_rtl.c | 18 | 
1 files 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);  }  |