linux/drivers/spi
Lukas Wunner a4729c3506
spi: rb4xx: Don't leak SPI master in probe error path
If the calls to devm_clk_get(), devm_spi_register_master() or
clk_prepare_enable() fail on probe of the Mikrotik RB4xx SPI driver,
the spi_master struct is erroneously not freed.

Fix by switching over to the new devm_spi_alloc_master() helper.

Fixes: 05aec35787 ("spi: Add SPI driver for Mikrotik RB4xx series boards")
Signed-off-by: Lukas Wunner <lukas@wunner.de>
Cc: <stable@vger.kernel.org> # v4.2+: 5e844cc37a: spi: Introduce device-managed SPI controller allocation
Cc: <stable@vger.kernel.org> # v4.2+
Cc: Bert Vermeulen <bert@biot.com>
Link: https://lore.kernel.org/r/369bf26d71927f60943b1d9d8f51810f00b0237d.1607286887.git.lukas@wunner.de
Signed-off-by: Mark Brown <broonie@kernel.org>
2020-12-07 14:18:55 +00:00
..
atmel-quadspi.c spi: atmel-quadspi: Disable clock in probe error path 2020-11-10 15:59:09 +00:00
internals.h
Kconfig spi: dw-bt1: Fix undefined devm_mux_control_get symbol 2020-11-27 14:49:39 +00:00
Makefile ARM: SoC platform updates 2020-10-24 10:33:08 -07:00
spi-altera.c spi: altera: fix module autoload 2020-06-24 16:37:47 +01:00
spi-amd.c spi: amd: Use devm_platform_ioremap_resource() in amd_spi_probe 2020-11-23 20:42:05 +00:00
spi-ar934x.c spi: add driver for ar934x spi controller 2020-02-11 11:37:30 +00:00
spi-armada-3700.c spi: a3700: Remove a useless memset 2020-08-18 17:52:37 +01:00
spi-at91-usart.c spi: spi-at91-usart: Remove unused OF table 'struct of_device_id' 2020-07-17 16:38:54 +01:00
spi-ath79.c
spi-atmel.c spi: atmel: Downgrade to dev_dbg when dma_request_chan() fails 2020-10-30 12:56:14 +00:00
spi-au1550.c
spi-axi-spi-engine.c spi: spi-axi-spi-engine: Access register after clock initialization 2020-04-09 18:46:53 +01:00
spi-bcm63xx-hsspi.c spi: bcm63xx-hsspi: fix missing clk_disable_unprepare() on error in bcm63xx_hsspi_resume 2020-11-09 19:44:30 +00:00
spi-bcm63xx.c spi: bcm63xx-spi: add reset support 2020-06-17 14:29:58 +01:00
spi-bcm2835.c spi: bcm2835: Fix use-after-free on unbind 2020-11-12 15:05:35 +00:00
spi-bcm2835aux.c spi: bcm2835aux: Restore err assignment in bcm2835aux_spi_probe 2020-11-13 18:22:24 +00:00
spi-bcm-qspi.c spi: bcm-qspi: Fix use-after-free on unbind 2020-11-12 15:05:37 +00:00
spi-bcm-qspi.h
spi-bitbang-txrx.h
spi-bitbang.c spi: spi-bitbang: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-17 16:38:45 +01:00
spi-brcmstb-qspi.c
spi-butterfly.c
spi-cadence-quadspi.c spi: cadence-quadspi: Fix error return code in cqspi_probe 2020-11-16 20:02:42 +00:00
spi-cadence.c spi: cadence: Add SPI transfer delays 2020-10-09 16:00:47 +01:00
spi-cavium-octeon.c
spi-cavium-thunderx.c spi: spi-cavium-thunderx: flag controller as half duplex 2020-06-16 00:38:39 +01:00
spi-cavium.c spi: use new spi_transfer_delay_exec helper where straightforward 2019-10-15 11:51:57 +01:00
spi-cavium.h
spi-clps711x.c
spi-coldfire-qspi.c spi: coldfire-qspi: Use clk_prepare_enable and clk_disable_unprepare 2020-07-17 00:55:26 +01:00
spi-davinci.c spi: davinci: Fix use-after-free on unbind 2020-12-07 14:18:47 +00:00
spi-dln2.c
spi-dw-bt1.c spi: dw: fixed missing resource_size 2020-11-25 12:54:44 +00:00
spi-dw-core.c spi: dw: Fix spi registration for controllers overriding CS 2020-11-25 12:54:05 +00:00
spi-dw-dma.c spi: dw: Add generic DW SSI status-check method 2020-10-08 23:00:18 +01:00
spi-dw-mmio.c spi: dw: Add DWC SSI capability 2020-10-08 23:00:06 +01:00
spi-dw-pci.c spi: dw: Add DWC SSI capability 2020-10-08 23:00:06 +01:00
spi-dw.h spi: dw: Introduce max mem-ops SPI bus frequency setting 2020-10-08 23:00:20 +01:00
spi-efm32.c spi: efm32: Convert to use GPIO descriptors 2020-03-27 15:52:23 +00:00
spi-ep93xx.c spi: spi-ep93xx: Fix API slippage 2020-07-17 16:38:47 +01:00
spi-falcon.c spi: spi-falcon: extend warning to delay as well 2019-10-15 11:46:57 +01:00
spi-fsi.c spi: fsi: Fix transfer returning without finalizing message 2020-11-11 12:34:29 +00:00
spi-fsl-cpm.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
spi-fsl-cpm.h
spi-fsl-dspi.c spi: fsl-dspi: fix wrong pointer in suspend/resume 2020-11-04 17:50:24 +00:00
spi-fsl-espi.c Merge remote-tracking branch 'spi/for-5.10' into spi-next 2020-10-09 16:01:22 +01:00
spi-fsl-lib.c
spi-fsl-lib.h
spi-fsl-lpspi.c spi: lpspi: Fix use-after-free on unbind 2020-11-12 18:45:56 +00:00
spi-fsl-qspi.c spi: Fix SPI NOR and SPI NAND acronyms 2020-07-17 00:55:25 +01:00
spi-fsl-spi.c spi: fsl: add missing __iomem annotation 2020-07-01 23:21:26 +01:00
spi-fsl-spi.h
spi-geni-qcom.c spi: spi-geni-qcom: Fix use-after-free on unbind 2020-12-07 14:18:48 +00:00
spi-gpio.c spi: gpio: Don't leak SPI master in probe error path 2020-12-07 14:18:54 +00:00
spi-hisi-sfc-v3xx.c spi: hisi-sfc-v3xx: fix spelling mistake "occured" -> "occurred" 2020-09-28 20:33:56 +01:00
spi-img-spfi.c spi: img-spfi: fix reference leak in img_spfi_resume 2020-11-02 15:53:25 +00:00
spi-imx.c Merge branch 'for-5.10' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi into spi-5.11 2020-11-27 16:18:32 +00:00
spi-iproc-qspi.c
spi-jcore.c remove ioremap_nocache and devm_ioremap_nocache 2020-01-06 09:45:59 +01:00
spi-lantiq-ssc.c spi: lantiq: remove redundant irqsave and irqrestore in hardIRQ 2020-09-17 19:56:02 +01:00
spi-lm70llp.c
spi-loopback-test.c spi: spi-loopback-test: Fix out-of-bounds read 2020-09-02 19:38:24 +01:00
spi-lp8841-rtc.c
spi-mem.c spi: spi-mem: fix reference leak in spi_mem_access_start 2020-11-04 17:52:33 +00:00
spi-meson-spicc.c spi: spi-meson-spicc: Remove set but never used variable 'data' from meson_spicc_reset_fifo() 2020-07-17 16:38:48 +01:00
spi-meson-spifc.c spi: spi-meson-spifc: Fix misdocumenting of 'dev' in 'struct meson_spifc' 2020-07-17 16:38:48 +01:00
spi-mpc52xx-psc.c spi: use new spi_transfer_delay_exec helper where straightforward 2019-10-15 11:51:57 +01:00
spi-mpc52xx.c
spi-mpc512x-psc.c spi: use new spi_transfer_delay_exec helper where straightforward 2019-10-15 11:51:57 +01:00
spi-mt65xx.c spi: mediatek: add spi support for mt8192 IC 2020-07-22 01:56:00 +01:00
spi-mt7621.c spi: mt7621: fix missing clk_disable_unprepare() on error in mt7621_spi_probe 2020-11-09 19:44:26 +00:00
spi-mtk-nor.c spi: spi-mtk-nor: Don't leak SPI master in probe error path 2020-12-07 14:18:53 +00:00
spi-mux.c spi: spi-mux: Simplify with dev_err_probe() 2020-09-08 18:19:27 +01:00
spi-mxic.c spi: mxic: Don't leak SPI master in probe error path 2020-12-07 14:18:52 +00:00
spi-mxs.c spi: mxs: fix reference leak in mxs_spi_probe 2020-11-18 18:00:26 +00:00
spi-npcm-fiu.c spi: npcm-fiu: Don't leak SPI master in probe error path 2020-11-17 17:08:39 +00:00
spi-npcm-pspi.c spi: npcm-pspi: Convert to use GPIO descriptors 2020-07-01 23:21:28 +01:00
spi-nxp-fspi.c spi: spi-nxp-fspi: fix fspi panic by unexpected interrupts 2020-11-23 14:10:02 +00:00
spi-oc-tiny.c SPI SUBSYSTEM: Replace HTTP links with HTTPS ones 2020-07-09 22:41:11 +01:00
spi-omap2-mcspi.c spi: omap2-mcspi: Improve performance waiting for CHSTAT 2020-09-22 01:04:20 +01:00
spi-omap-100k.c spi: omap-100k: Drop include 2020-07-14 17:38:46 +01:00
spi-omap-uwire.c spi: omap-uwire: Use clk_prepare_enable and clk_disable_unprepare 2020-07-15 15:58:33 +01:00
spi-orion.c spi: Fix SPI NOR and SPI NAND acronyms 2020-07-17 00:55:25 +01:00
spi-pic32-sqi.c
spi-pic32.c spi: pic32: Don't leak DMA channels in probe error path 2020-11-12 15:16:34 +00:00
spi-pl022.c spi: spi-pl022: Provide missing struct attribute/function param docs 2020-07-17 16:38:50 +01:00
spi-ppc4xx.c spi: ppc4xx: Convert to use GPIO descriptors 2020-07-22 01:55:52 +01:00
spi-pxa2xx-dma.c
spi-pxa2xx-pci.c
spi-pxa2xx.c spi: pxa2xx: Fix use-after-free on unbind 2020-12-07 14:18:50 +00:00
spi-pxa2xx.h
spi-qcom-qspi.c spi: spi-qcom-qspi: Fix use-after-free on unbind 2020-12-07 14:18:49 +00:00
spi-qup.c spi: qup: remove redundant assignment to variable ret 2020-09-14 15:50:04 +01:00
spi-rb4xx.c spi: rb4xx: Don't leak SPI master in probe error path 2020-12-07 14:18:55 +00:00
spi-rockchip.c spi: rockchip: enable autosuspend feature 2020-10-26 23:29:04 +00:00
spi-rpc-if.c spi: rpc-if: Fix use-after-free on unbind 2020-12-07 14:18:51 +00:00
spi-rspi.c spi: rspi: Fill in controller speed limits 2020-08-20 22:38:17 +01:00
spi-s3c24xx-regs.h ARM: s3c24xx: move regs-spi.h into spi driver 2020-08-19 21:40:14 +02:00
spi-s3c24xx.c ARM: SoC platform updates 2020-10-24 10:33:08 -07:00
spi-s3c64xx.c spi: spi-s3c64xx: Turn on interrupts upon resume 2020-10-02 21:54:24 +01:00
spi-sc18is602.c spi: sc18is602: Fix a typo in MODULE_DESCRIPTION 2020-04-14 12:39:37 +01:00
spi-sh-hspi.c spi: use new spi_transfer_delay_exec helper where straightforward 2019-10-15 11:51:57 +01:00
spi-sh-msiof.c spi: spi-sh-msiof: Fix checkpatch error Complex macros should use () 2020-04-14 18:36:34 +01:00
spi-sh-sci.c
spi-sh.c spi: spi-sh: Fix use-after-free on unbind 2020-12-07 14:18:50 +00:00
spi-sifive.c spi: sifive: disable clk when probe fails and remove 2019-11-04 13:26:11 +00:00
spi-sirf.c spi: sirf: Use dma_request_chan() instead dma_request_slave_channel() 2019-12-16 11:57:36 +00:00
spi-slave-mt27xx.c spi: mediatek: Use devm_platform_ioremap_resource() in mtk_spi_slave_probe() 2019-10-01 12:34:58 +01:00
spi-slave-system-control.c
spi-slave-time.c
spi-sprd-adi.c spi: sprd: Simplify with dev_err_probe() 2020-09-14 15:50:17 +01:00
spi-sprd.c spi: sprd: fix reference leak in sprd_spi_remove 2020-11-11 12:39:32 +00:00
spi-st-ssc4.c spi: st-ssc4: Fix unbalanced pm_runtime_disable() in probe error path 2020-11-12 15:16:35 +00:00
spi-stm32-qspi.c spi: stm32-qspi: fix reference leak in stm32 qspi operations 2020-11-09 19:44:25 +00:00
spi-stm32.c spi: stm32: fix reference leak in stm32_spi_resume 2020-11-06 10:54:49 +00:00
spi-sun4i.c spi: sun4i: update max transfer size reported 2020-07-27 14:55:21 +01:00
spi-sun6i.c spi: spi-sun6i: enable autosuspend feature 2020-10-26 23:29:05 +00:00
spi-synquacer.c spi: synquacer: Disable clock in probe error path 2020-11-12 15:16:33 +00:00
spi-tegra20-sflash.c spi: tegra20-sflash: fix reference leak in tegra_sflash_resume 2020-11-09 19:44:28 +00:00
spi-tegra20-slink.c spi: tegra20-slink: fix reference leak in slink ops of tegra20 2020-11-09 19:44:27 +00:00
spi-tegra114.c spi: tegra114: fix reference leak in tegra spi ops 2020-11-09 19:44:29 +00:00
spi-test.h
spi-ti-qspi.c spi: spi-ti-qspi: fix reference leak in ti_qspi_setup 2020-11-09 19:44:26 +00:00
spi-tle62x0.c
spi-topcliff-pch.c spi/topcliff-pch: drop double zeroing 2020-09-21 17:56:38 +01:00
spi-txx9.c spi: txx9: Convert to use GPIO descriptors 2019-10-30 14:14:32 +00:00
spi-uniphier.c spi: uniphier: Use devm_platform_get_and_ioremap_resource() to simplify code 2020-05-11 18:17:52 +01:00
spi-xcomm.c spi: use new spi_transfer_delay_exec helper where straightforward 2019-10-15 11:51:57 +01:00
spi-xilinx.c spi: xilinx: Fix info message during probe 2020-09-17 19:56:01 +01:00
spi-xlp.c
spi-xtensa-xtfpga.c spi: xtensa-xtfpga: Use devm_platform_ioremap_resource() in xtfpga_spi_probe() 2019-10-01 12:35:18 +01:00
spi-zynq-qspi.c spi: spi-zynq-qspi: Add description for 2 missing attributes/parameters 2020-07-17 16:38:51 +01:00
spi-zynqmp-gqspi.c spi: spi-zynqmp-gqspi: Fix incorrect indentation 2020-09-24 12:59:29 +01:00
spi.c Merge branch 'for-5.10' of https://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi into spi-5.11 2020-11-27 16:18:32 +00:00
spidev.c spi: spidev: Remove redundant initialization of variable status 2020-09-09 16:27:46 +01:00