linux-stable/arch/arm/mach-omap2
Kunwu Chan 27db23931d ARM: OMAP2+: Fix null pointer dereference and memory leak in omap_soc_device_init
[ Upstream commit c72b9c33ef ]

kasprintf() returns a pointer to dynamically allocated memory which can
be NULL upon failure. When 'soc_dev_attr->family' is NULL,it'll trigger
the null pointer dereference issue, such as in 'soc_info_show'.

And when 'soc_device_register' fails, it's necessary to release
'soc_dev_attr->family' to avoid memory leaks.

Fixes: 6770b21143 ("ARM: OMAP2+: Export SoC information to userspace")
Signed-off-by: Kunwu Chan <chentao@kylinos.cn>
Message-ID: <20231123145237.609442-1-chentao@kylinos.cn>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-01-08 11:25:02 +01:00
..
include/mach
am33xx-restart.c
am33xx.h
board-generic.c ARM/arm64: SoC platform updates for v4.14 2017-09-10 20:35:46 -07:00
board-n8x0.c ARM: OMAP2+: Fix build warning when mmc_omap is not built 2021-06-30 08:48:45 -04:00
clkt2xxx_dpll.c
clkt2xxx_dpllcore.c clk: ti: convert to use proper register definition for all accesses 2017-03-08 13:06:15 +02:00
clkt2xxx_virt_prcm_set.c
clock.c clk: ti: convert to use proper register definition for all accesses 2017-03-08 13:06:15 +02:00
clock.h clk: ti: convert to use proper register definition for all accesses 2017-03-08 13:06:15 +02:00
clock2xxx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clock3xxx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clockdomain.c ARM: omap2+: clockdomain: add clkdm_xlate_address 2017-06-06 00:13:56 -07:00
clockdomain.h ARM: omap2+: clockdomain: add clkdm_xlate_address 2017-06-06 00:13:56 -07:00
clockdomains2xxx_3xxx_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clockdomains3xxx_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clockdomains7xx_data.c ARM: DRA7: clockdomain: Change the CLKTRCTRL of CM_PCIE_CLKSTCTRL to SW_WKUP 2017-04-28 10:23:20 -05:00
clockdomains33xx_data.c
clockdomains43xx_data.c
clockdomains44xx_data.c
clockdomains54xx_data.c
clockdomains81xx_data.c ARM: OMAP2+: dm81xx: Add clkdm and hwmod for SATA 2017-03-28 14:10:03 -07:00
clockdomains2420_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
clockdomains2430_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
cm-regbits-7xx.h
cm-regbits-24xx.h
cm-regbits-33xx.h
cm-regbits-34xx.h
cm-regbits-44xx.h
cm-regbits-54xx.h
cm.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
cm1_7xx.h
cm1_44xx.h
cm1_54xx.h
cm2_7xx.h
cm2_44xx.h
cm2_54xx.h
cm2xxx.c clk: ti: convert to use proper register definition for all accesses 2017-03-08 13:06:15 +02:00
cm2xxx.h
cm2xxx_3xxx.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
cm3xxx.c ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
cm3xxx.h
cm33xx.c ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
cm33xx.h
cm44xx.h
cm81xx.h ARM: OMAP2+: dm81xx: Add clkdm and hwmod for SATA 2017-03-28 14:10:03 -07:00
cm_common.c ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
cminst44xx.c ARM: OMAP4: cminst: add support for clkdm_xlate_address 2017-06-06 00:14:01 -07:00
common-board-devices.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
common.c
common.h mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
control.c ARM: 8641/1: treewide: Replace uses of virt_to_phys with __pa_symbol 2017-02-28 11:06:10 +00:00
control.h
cpuidle34xx.c ARM: OMAP3: Add cpuidle parameters table for omap3430 2016-02-19 10:35:39 -08:00
cpuidle44xx.c ARM: OMAP2+: fix lack of timer interrupts on CPU1 after hotplug 2019-03-23 14:35:11 +01:00
ctrl_module_wkup_44xx.h
devices.c ARM: OMAP2+: Remove unused legacy code for device init 2017-06-08 02:57:38 -07:00
display.c ARM: OMAP2+: display: Fix refcount leak bug 2022-08-25 11:11:14 +02:00
display.h ARM: OMAP2+: Remove unused omapdrm platform device 2017-08-16 15:38:51 +03:00
dma.c ARM: OMAP2+: Remove unused legacy code for DMA 2017-08-10 08:21:40 -07:00
fb.c ARM: OMAP2+: use IS_ENABLED() instead of checking for built-in or module 2016-08-26 08:42:35 -07:00
gpmc-onenand.c ARM: OMAP2+: gpmc-onenand: propagate error on initialization failure 2017-02-28 09:06:23 -08:00
gpmc.h
hdq1w.c
hdq1w.h
hsmmc.c ARM: OMAP2+: hsmmc: fix logic to call either omap_hsmmc_init or omap_hsmmc_late_init but not both 2017-09-19 10:59:26 -07:00
hsmmc.h ARM: OMAP2+: hsmmc.c: Remove dead code 2017-07-17 15:04:47 +02:00
i2c.c ARM: OMAP2+: Remove legacy i2c.c platform init code 2016-11-10 08:53:30 -07:00
i2c.h
id.c ARM: OMAP2+: Fix null pointer dereference and memory leak in omap_soc_device_init 2024-01-08 11:25:02 +01:00
id.h
io.c ARM: OMAP2+: Register SoC device attributes from machine .init() 2017-08-15 15:18:25 +03:00
iomap.h
Kconfig ARM: OMAP2+: Select PINCTRL_TI_IODELAY for SOC_DRA7XX 2017-08-10 09:56:20 -07:00
l3_2xxx.h
l3_3xxx.h
l4_2xxx.h
l4_3xxx.h
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mcbsp.c ARM: OMAP2+: Remove unused legacy code for McBSP 2017-06-08 04:15:10 -07:00
mmc.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
msdi.c ARM: OMAP2+: Remove legacy mux code 2016-11-10 12:42:49 -07:00
omap-headsmp.S ARM: OMAP5 / DRA7: Fix HYP mode boot for thumb2 build 2017-02-16 13:12:15 -08:00
omap-hotplug.c ARM: omap2+: Revert omap-smp.c changes resetting CPU1 during boot 2017-03-27 10:10:42 -07:00
omap-mpuss-lowpower.c ARM: omap2+: make omap4_get_cpu1_ns_pa_addr declaration usable 2017-05-09 21:13:25 +02:00
omap-pm-noop.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
omap-pm.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
omap-secure.c ARM: omap2: hide omap3_save_secure_ram on non-OMAP3 builds 2018-03-15 10:54:22 +01:00
omap-secure.h ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:07:53 +01:00
omap-smc.S ARM: omap2+: Revert omap-smp.c changes resetting CPU1 during boot 2017-03-27 10:10:42 -07:00
omap-smp.c ARM: DRA7/OMAP5: Enable ACTLR[0] (Enable invalidates of BTB) for secondary cores 2018-08-24 13:09:16 +02:00
omap-wakeupgen.c ARM: OMAP2+: Fix sar_base inititalization for HS omaps 2018-05-30 07:51:55 +02:00
omap-wakeupgen.h
omap2-restart.c ARM: OMAP2+: Change core_initcall levels to postcore_initcall 2015-12-03 11:38:09 -08:00
omap3-restart.c
omap4-common.c ARM: OMAP2+: Fix refcount leak in omap_gic_of_init 2022-05-12 12:17:06 +02:00
omap4-restart.c
omap4-sar-layout.h ARM: OMAP5: Fix mpuss_early_init 2016-11-07 16:51:58 -07:00
omap24xx.h
omap34xx.h
omap44xx.h
omap54xx.h
omap_device.c ARM: OMAP2+: omap_device: fix idling of devices during probe 2021-01-17 13:58:59 +01:00
omap_device.h
omap_hwmod.c ARM: OMAP2+: hwmod: Add of_node_put() before break 2022-02-23 11:57:36 +01:00
omap_hwmod.h ARM: OMAP2+ hwmod: Allow modules to disable HW_AUTO 2017-03-23 13:19:59 -07:00
omap_hwmod_2xxx_3xxx_interconnect_data.c ARM: OMAP2+: Remove legacy data from hwmod for omap3 2016-11-10 14:03:19 -07:00
omap_hwmod_2xxx_3xxx_ipblock_data.c ARM: OMAP2+: Remove legacy data from hwmod for omap3 2016-11-10 14:03:19 -07:00
omap_hwmod_2xxx_interconnect_data.c ARM: OMAP2+: Remove legacy data from hwmod for omap3 2016-11-10 14:03:19 -07:00
omap_hwmod_2xxx_ipblock_data.c ARM: OMAP2+: Remove unused CLOCKACT_TEST_ICLK 2017-03-14 13:13:19 -07:00
omap_hwmod_3xxx_data.c ARM: OMAP3: hwmod_data: add missing module_offs for MMC3 2018-01-23 19:58:15 +01:00
omap_hwmod_7xx_data.c ARM: OMAP2+: Fix missing SYSC_HAS_RESET_STATUS for dra7 epwmss 2019-09-21 07:15:30 +02:00
omap_hwmod_33xx_43xx_common_data.h ARM: AMx3xx: hwmod: Add data for RNG 2016-11-09 15:39:41 -07:00
omap_hwmod_33xx_43xx_interconnect_data.c ARM: AMx3xx: hwmod: Add data for RNG 2016-11-09 15:39:41 -07:00
omap_hwmod_33xx_43xx_ipblock_data.c ARM: OMAP2+: Fix missing reset done flag for am3 and am43 2019-10-29 09:16:54 +01:00
omap_hwmod_33xx_data.c ARM: AMx3xx: hwmod: Add data for RNG 2016-11-09 15:39:41 -07:00
omap_hwmod_43xx_data.c ARM: AMx3xx: hwmod: Add data for RNG 2016-11-09 15:39:41 -07:00
omap_hwmod_44xx_data.c ARM: OMAP4: hwmod_data: add SHAM crypto accelerator 2017-06-14 00:53:51 -07:00
omap_hwmod_54xx_data.c ARM: OMAP2+: Remove unused CLOCKACT_TEST_ICLK 2017-03-14 13:13:19 -07:00
omap_hwmod_81xx_data.c ARM: OMAP2+: dm81xx: Add clkdm and hwmod for SATA 2017-03-28 14:10:03 -07:00
omap_hwmod_2420_data.c
omap_hwmod_2430_data.c
omap_hwmod_common_data.c
omap_hwmod_common_data.h ARM: OMAP2+: Remove legacy gpio code 2016-11-23 08:22:10 -08:00
omap_hwmod_common_ipblock_data.c
omap_hwmod_reset.c ARM: hwmod: RTC: Don't assume lock/unlock will be called with irq enabled 2018-10-03 17:00:48 -07:00
omap_opp_data.h
omap_phy_internal.c
omap_twl.c mfd: twl: Move header file out of I2C realm 2017-09-04 14:41:02 +01:00
opp2xxx.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
opp3xxx_data.c ARM: OMAP2+: Remove unused legacy code for opp 2017-06-08 02:57:16 -07:00
opp4xxx_data.c ARM: OMAP2+: Remove unused legacy code for opp 2017-06-08 02:57:16 -07:00
opp2420_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
opp2430_data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pdata-quirks.c omap: pdata-quirks: remove openpandora quirks for mmc3 and wl1251 2019-12-17 20:39:53 +01:00
pm-debug.c sched/headers: Prepare for new header dependencies before moving code to <linux/sched/clock.h> 2017-03-02 08:42:27 +01:00
pm.c ARM: OMAP3: Fix prm wake interrupt for resume 2018-05-30 07:51:55 +02:00
pm.h ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:07:53 +01:00
pm24xx.c
pm34xx.c ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:07:53 +01:00
pm44xx.c ARM: OMAP5: Add basic cpuidle MPU CSWR support 2016-11-07 16:52:14 -07:00
powerdomain-common.c
powerdomain.c ARM: OMAP2+: Fix -Warray-bounds warning in _pwrdm_state_switch() 2023-09-23 10:46:59 +02:00
powerdomain.h
powerdomains2xxx_3xxx_data.c
powerdomains2xxx_3xxx_data.h
powerdomains2xxx_data.c
powerdomains3xxx_data.c ARM: OMAP2+: Update 81xx clock and power domains for default, active and sgx 2015-12-22 16:23:08 -08:00
powerdomains7xx_data.c ARM: OMAP: dra7: powerdomain data: Register SoC specific powerdomains 2017-08-14 10:33:29 -07:00
powerdomains33xx_data.c
powerdomains43xx_data.c
powerdomains44xx_data.c
powerdomains54xx_data.c
prcm-common.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prcm43xx.h ARM: AMx3xx: hwmod: Add data for RNG 2016-11-09 15:39:41 -07:00
prcm44xx.h
prcm_mpu7xx.h
prcm_mpu44xx.c ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prcm_mpu44xx.h
prcm_mpu54xx.h
prcm_mpu_44xx_54xx.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prm-regbits-24xx.h
prm-regbits-33xx.h
prm-regbits-34xx.h
prm-regbits-44xx.h
prm.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prm2xxx.c
prm2xxx.h
prm2xxx_3xxx.c
prm2xxx_3xxx.h ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prm3xxx.c ARM: omap2: remove incorrect __init annotation 2019-07-21 09:04:38 +02:00
prm3xxx.h
prm7xx.h ARM: DRA7: hwmod: Add reset data for PCIe 2016-02-09 02:18:52 -07:00
prm33xx.c ARM: AM33xx: PRM: Remove am33xx_pwrdm_read_prev_pwrst function 2018-02-25 11:07:53 +01:00
prm33xx.h ARM: dts: am43xx: Remove wrongly defined RSTST offset for PER Domain 2016-06-22 03:33:25 -07:00
prm44xx.c ARM: OMAP2+: prm44xx: Fix section annotation on omap44xx_prm_enable_io_wakeup 2018-12-17 09:28:47 +01:00
prm44xx.h
prm44xx_54xx.h
prm54xx.h
prm_common.c ARM: avoid Cortex-A9 livelock on tight dmb loops 2019-04-05 22:31:37 +02:00
prminst44xx.c ARM: OMAP2+: PRCM: store also physical addresses for instances 2017-06-06 00:13:51 -07:00
prminst44xx.h
scrm44xx.h
scrm54xx.h
sdrc.c
sdrc.h ARM: OMAP2+: Fix typo in sdrc.h 2016-06-10 04:17:07 -07:00
sdrc2xxx.c
serial.h
sleep24xx.S
sleep34xx.S ARM: OMAP2+: Fix SRAM virt to phys translation for save_secure_ram_context 2018-02-25 11:07:53 +01:00
sleep44xx.S ARM: align .data section 2017-08-14 16:22:55 +01:00
smartreflex-class3.c
soc.h ARM: dra762: Add support for device identification 2017-08-14 10:32:02 -07:00
sr_device.c ARM: OMAP2+: SmartReflex: Delete an error message for a failed memory allocation in two functions 2017-06-08 03:02:32 -07:00
sram.c ARM: OMAP3: clock: remove un-used core dpll re-program code 2015-10-14 12:35:27 -07:00
sram.h ARM: OMAP3: clock: remove un-used core dpll re-program code 2015-10-14 12:35:27 -07:00
sram242x.S
sram243x.S
ti81xx-restart.c
ti81xx.h
timer.c ARM: OMAP2+: Fix memory leak in realtime_counter_init() 2023-03-11 16:26:33 +01:00
usb-tusb6010.c ARM: OMAP2+: Remove legacy muxing for usb-tusb6010.c 2016-11-10 12:42:15 -07:00
usb.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vc.c ARM: remove duplicate 'const' annotations' 2017-05-19 10:12:55 +02:00
vc.h
vc3xxx_data.c
vc44xx_data.c
voltage.c ARM: OMAP2+: avoid NULL pointer dereference 2016-11-07 16:24:53 -07:00
voltage.h
voltagedomains2xxx_data.c
voltagedomains3xxx_data.c
voltagedomains44xx_data.c
voltagedomains54xx_data.c
vp.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
vp.h
vp3xxx_data.c
vp44xx_data.c
wd_timer.c ARM: OMAP2+: Remove unused legacy code for watchdog 2017-06-08 04:15:10 -07:00
wd_timer.h