linux/drivers/mmc/host
Geert Uytterhoeven 13a6a2ed1f mmc: tmio: Remove bogus un-initialization in tmio_mmc_host_free()
If CONFIG_DEBUG_SLAB=y:

    sh_mobile_sdhi ee100000.sd: Got CD GPIO
    sh_mobile_sdhi ee100000.sd: Got WP GPIO
    platform ee100000.sd: Driver sh_mobile_sdhi requests probe deferral
    ...
    Slab corruption (Not tainted): kmalloc-1024 start=ed8b3c00, len=1024
    2d0: 00 00 00 00 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  ....kkkkkkkkkkkk
    Prev obj: start=ed8b3800, len=1024
    000: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  kkkkkkkkkkkkkkkk
    010: 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  kkkkkkkkkkkkkkkk

Struct tmio_mmc_host is embedded inside struct mmc_host, and thus is
freed by the call to mmc_free_host(). Hence it must not be written to
afterwards, as that will corrupt freed (and perhaps already reused)
memory.

Fixes: 94b110aff8 ("mmc: tmio: add tmio_mmc_host_alloc/free()")
Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be>
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
2015-03-23 14:13:38 +01:00
..
android-goldfish.c
atmel-mci-regs.h
atmel-mci.c
au1xmmc.c
bfin_sdh.c
cb710-mmc.c
cb710-mmc.h
davinci_mmc.c
dw_mmc-exynos.c mmc: dw_mmc: exynos: dw_mci_exynos_prepare_hs400_tuning() can be static 2015-03-23 14:13:38 +01:00
dw_mmc-exynos.h mmc: dw_mmc: exynos: Support eMMC's HS400 mode 2015-03-23 14:13:28 +01:00
dw_mmc-k3.c
dw_mmc-pci.c
dw_mmc-pltfm.c
dw_mmc-pltfm.h
dw_mmc-rockchip.c mmc: dw_mmc: rockchip: add support MMC_CAP_RUNTIME_RESUME capability 2015-03-23 14:13:28 +01:00
dw_mmc.c mmc: dw_mmc: exynos: dw_mci_exynos_prepare_hs400_tuning() can be static 2015-03-23 14:13:38 +01:00
dw_mmc.h mmc: dw_mmc: exynos: Support eMMC's HS400 mode 2015-03-23 14:13:28 +01:00
jz4740_mmc.c
Kconfig mmc: Add hardware dependencies for sdhci-pxav3 and sdhci-pxav2 2015-01-30 11:44:42 +01:00
Makefile mmc: sdhci: host: add new f_sdh30 2015-01-20 09:32:37 +01:00
mmc_spi.c
mmci_qcom_dml.c
mmci_qcom_dml.h
mmci.c mmc: mmci: Get rid of dead code in mmci_dma_setup 2015-01-28 12:32:18 +01:00
mmci.h
moxart-mmc.c mmc: moxart: fix probe logic 2015-02-04 09:42:29 +01:00
msm_sdcc.c
msm_sdcc.h
mvsdio.c mmc: mvsdio: don't use devm_pinctrl_get_select_default() in probe 2015-01-19 09:56:21 +01:00
mvsdio.h
mxcmmc.c
mxs-mmc.c mmc: mxs-mmc: remove unneeded NULL check 2015-01-19 09:56:10 +01:00
of_mmc_spi.c
omap_hsmmc.c mmc: omap_hsmmc: add hibernation support 2015-03-23 14:13:37 +01:00
omap.c
pxamci.c
pxamci.h
rtsx_pci_sdmmc.c mmc: rtsx: check sg_count before long data xfer 2015-01-21 13:58:44 +01:00
rtsx_usb_sdmmc.c
s3cmci.c
s3cmci.h
sdhci_f_sdh30.c mmc: sdhci: host: fix odd_ptr_err.cocci warnings 2015-01-21 12:33:43 +01:00
sdhci-acpi.c mmc: sdhci-acpi: fix copy'n'paste typos in the comments 2015-01-19 09:56:28 +01:00
sdhci-bcm2835.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-bcm-kona.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-cns3xxx.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-dove.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-esdhc-imx.c mmc: sdhci-esdhc-imx: Fixup runtime PM conditions during ->probe() 2015-01-19 09:56:22 +01:00
sdhci-esdhc.h
sdhci-msm.c
sdhci-of-arasan.c mmc: sdhci: disable the clock in sdhci_pltfm_unregister() 2015-03-23 14:13:34 +01:00
sdhci-of-esdhc.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-of-hlwd.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-pci-data.c
sdhci-pci-o2micro.c
sdhci-pci-o2micro.h
sdhci-pci.c mmc: sdhci-pci: Remove redundant runtime PM idle callback 2015-01-19 09:56:22 +01:00
sdhci-pci.h
sdhci-pltfm.c mmc: sdhci: disable the clock in sdhci_pltfm_unregister() 2015-03-23 14:13:34 +01:00
sdhci-pltfm.h
sdhci-pxav2.c
sdhci-pxav3.c mmc: sdhci-pxav3: Modify clock settings for the SDR50 and DDR50 modes 2015-01-29 13:08:46 +01:00
sdhci-s3c-regs.h
sdhci-s3c.c mmc: sdhci-s3c: solve problem with sleeping in atomic context 2015-02-04 13:39:14 +01:00
sdhci-sirf.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-spear.c
sdhci-st.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci-tegra.c mmc: sdhci: set the .remove to sdhci_pltfm_unregister() 2015-03-23 14:13:35 +01:00
sdhci.c mmc: sdhci: switch voltage before sdhci_set_ios in runtime resume 2015-01-29 11:28:06 +01:00
sdhci.h mmc: sdhci: add a voltage switch callback function 2015-01-20 09:29:16 +01:00
sdricoh_cs.c
sh_mmcif.c
sh_mobile_sdhi.c mmc: tmio: remove TMIO_MMC_HAVE_CTL_DMA_REG flag 2015-01-20 10:24:36 +01:00
sunxi-mmc.c mmc: sunxi: Use devm_reset_control_get_optional() for reset control 2015-03-23 14:13:35 +01:00
tifm_sd.c
tmio_mmc_dma.c mmc: tmio: remove TMIO_MMC_HAVE_CTL_DMA_REG flag 2015-01-20 10:24:36 +01:00
tmio_mmc_pio.c mmc: tmio: Remove bogus un-initialization in tmio_mmc_host_free() 2015-03-23 14:13:38 +01:00
tmio_mmc.c mmc: tmio: tmio_mmc_host has .bus_shift 2015-01-20 10:22:48 +01:00
tmio_mmc.h mmc: tmio: enable SoC specific DMA buswidth settings 2015-01-20 10:23:31 +01:00
toshsd.c mmc: toshsd: Fix unbalanced locking 2015-01-19 09:56:07 +01:00
toshsd.h
usdhi6rol0.c
ushc.c
via-sdmmc.c
vub300.c mmc: vub300: remove unreachable return value handling 2015-01-21 12:02:05 +01:00
wbsd.c
wbsd.h
wmt-sdmmc.c