kernel_optimize_test/drivers/extcon
bumwoo lee abf3b22261 extcon: Modify extcon device to be created after driver data is set
[ Upstream commit 5dcc2afe716d69f5112ce035cb14f007461ff189 ]

Currently, someone can invoke the sysfs such as state_show()
intermittently before dev_set_drvdata() is done.
And it can be a cause of kernel Oops because of edev is Null at that time.
So modified the driver registration to after setting drviver data.

- Oops's backtrace.

Backtrace:
[<c067865c>] (state_show) from [<c05222e8>] (dev_attr_show)
[<c05222c0>] (dev_attr_show) from [<c02c66e0>] (sysfs_kf_seq_show)
[<c02c6648>] (sysfs_kf_seq_show) from [<c02c496c>] (kernfs_seq_show)
[<c02c4938>] (kernfs_seq_show) from [<c025e2a0>] (seq_read)
[<c025e11c>] (seq_read) from [<c02c50a0>] (kernfs_fop_read)
[<c02c5064>] (kernfs_fop_read) from [<c0231cac>] (__vfs_read)
[<c0231c5c>] (__vfs_read) from [<c0231ee0>] (vfs_read)
[<c0231e34>] (vfs_read) from [<c0232464>] (ksys_read)
[<c02323f0>] (ksys_read) from [<c02324fc>] (sys_read)
[<c02324e4>] (sys_read) from [<c00091d0>] (__sys_trace_return)

Signed-off-by: bumwoo lee <bw365.lee@samsung.com>
Signed-off-by: Chanwoo Choi <cw00.choi@samsung.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2022-06-14 18:32:43 +02:00
..
devres.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 282 2019-06-05 17:36:37 +02:00
extcon-adc-jack.c extcon: adc-jack: Fix an error handling path in 'adc_jack_probe()' 2020-05-29 17:36:01 +09:00
extcon-arizona.c extcon: arizona: Fix various races on driver unbind 2021-05-11 14:47:24 +02:00
extcon-axp288.c extcon: axp288: Use module_platform_driver to simplify the code 2020-09-30 00:40:06 +09:00
extcon-fsa9480.c extcon: fsa9480: Support the FSA880 variant 2019-07-24 19:10:19 +09:00
extcon-gpio.c extcon: gpio: Request reasonable interrupts 2019-07-24 19:20:19 +09:00
extcon-intel-cht-wc.c extcon-intel-cht-wc: Don't reset USB data connection at probe 2019-10-01 06:46:30 +09:00
extcon-intel-int3496.c extcon: int3496: Convert to use SPDX identifier 2018-08-28 11:21:15 +09:00
extcon-intel-mrfld.c extcon: intel-mrfld: Sync hardware and software state on init 2021-07-19 09:45:00 +02:00
extcon-intel.h extcon: intel: Split out some definitions to a common header 2019-04-05 10:21:41 +09:00
extcon-max3355.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 233 2019-06-19 17:09:06 +02:00
extcon-max8997.c extcon: max8997: Add missing modalias string 2021-07-14 16:56:47 +02:00
extcon-max14577.c extcon: max14577: Return error code of extcon_dev_allocate() 2020-09-24 19:20:49 +09:00
extcon-max77693.c extcon: max77693: Fix modalias string 2020-12-30 11:53:49 +01:00
extcon-max77843.c extcon: max77843: Return error code of extcon_dev_allocate() 2020-09-24 19:20:49 +09:00
extcon-palmas.c extcon: palmas: Simplify with dev_err_probe() 2020-09-24 19:20:49 +09:00
extcon-ptn5150.c extcon: ptn5150: Add queue work sync before driver release 2022-06-14 18:32:33 +02:00
extcon-qcom-spmi-misc.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
extcon-rt8973a.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
extcon-rt8973a.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
extcon-sm5502.c extcon: sm5502: Drop invalid register write in sm5502_reg_data 2021-07-14 16:56:47 +02:00
extcon-sm5502.h extcon: sm5502: Reset registers during initialization 2019-10-11 10:43:26 +09:00
extcon-usb-gpio.c extcon: Replace HTTP links with HTTPS ones 2020-09-24 19:20:48 +09:00
extcon-usbc-cros-ec.c mfd / platform: cros_ec: Reorganize platform and mfd includes 2019-09-02 11:33:42 +01:00
extcon.c extcon: Modify extcon device to be created after driver data is set 2022-06-14 18:32:43 +02:00
extcon.h USB/PHY patches for 4.15-rc1 2017-11-13 21:14:07 -08:00
Kconfig mfd / platform: cros_ec: Move cros-ec core driver out from MFD 2019-09-02 11:33:12 +01:00
Makefile extcon: Add fsa9480 extcon driver 2019-06-22 21:34:51 +09:00