linux/sound/soc
Johan Hovold c641e5b207 ASoC: fix pcm-creation regression
This reverts commit 99b04f4c40 ("ASoC: add Component level
pcm_new/pcm_free"), which started calling the pcm_new callback for every
component in a *card* when creating a new pcm, something which does not
seem to make any sense.

This specifically led to memory leaks in systems with more than one
platform component and where DMA memory is allocated in the
platform-driver callback. For example, when both mcasp devices are being
used on an am335x board, DMA memory would be allocated twice for every
DAI link during probe.

When CONFIG_SND_VERBOSE_PROCFS was set this fortunately also led to
warnings such as:

WARNING: CPU: 0 PID: 565 at ../fs/proc/generic.c:346 proc_register+0x110/0x154
proc_dir_entry 'sub0/prealloc' already registered

Since there seems to be no users of the new component callbacks, and the
current implementation introduced a regression, let's revert the
offending commit for now.

Fixes: 99b04f4c40 ("ASoC: add Component level pcm_new/pcm_free")
Signed-off-by: Johan Hovold <johan@kernel.org>
Reviewed-by: Linus Walleij <linus.walleij@linaro.org>
Tested-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable <stable@vger.kernel.org>	# 4.10
2017-07-17 15:50:32 +01:00
..
adi
amd scripts/spelling.txt: add "disble(d)" pattern and fix typo instances 2017-03-09 17:01:09 -08:00
atmel Merge remote-tracking branches 'asoc/topic/ak4613', 'asoc/topic/ak4642', 'asoc/topic/atmel', 'asoc/topic/cs35l34' and 'asoc/topic/cs35l35' into asoc-next 2017-07-03 16:51:31 +01:00
au1x
bcm ASoC: bcm: add depends on HAS_DMA 2016-11-02 14:57:05 -06:00
blackfin ASoC: blackfin: Convert to the new PCM ops 2017-06-02 19:38:10 +02:00
cirrus
codecs Merge remote-tracking branches 'asoc/topic/davinci', 'asoc/topic/drm', 'asoc/topic/dwc' and 'asoc/topic/es8316' into asoc-next 2017-07-03 16:51:36 +01:00
davinci ASoC: davinci-mcasp: Support for one channel (mono) audio 2017-05-14 18:22:12 +09:00
dwc ASoC: dwc: Added a quirk DW_I2S_QUIRK_16BIT_IDX_OVERRIDE to dwc driver 2017-06-28 19:01:12 +01:00
fsl ASoC: fsl: mpc5200_dma: remove unused psc_dma 2017-06-21 11:53:45 +01:00
generic Merge remote-tracking branch 'asoc/topic/rcar' into asoc-next 2017-07-03 16:51:30 +01:00
hisilicon ASoC: hisilicon: localize functions without external linkage 2017-05-14 19:00:18 +09:00
img ASoC: img: remove unused ‘format’ 2016-12-15 11:22:52 +00:00
intel sound updates for 4.13-rc1 2017-07-06 10:56:51 -07:00
jz4740
kirkwood ASoC: constify snd_soc_ops structures 2016-10-24 18:34:55 +01:00
mediatek ASoC: mediatek: Constify hw_constraints 2017-06-13 21:33:03 +01:00
mxs ASoC: mxs-saif: fix setting master base rate 2017-01-17 18:19:36 +00:00
nuc900
omap ASoC: omap-mcbsp: Use sysfs_match_string() helper 2017-06-09 18:38:35 +01:00
pxa ASoC: pxa: add COMPILE_TEST on SND_PXA2XX_SOC 2017-06-21 11:54:04 +01:00
qcom ASoC: qcom: move clock names into LPASS variant struct 2017-04-21 18:07:45 +01:00
rockchip Merge remote-tracking branches 'asoc/topic/omap', 'asoc/topic/pxa', 'asoc/topic/rockchip' and 'asoc/topic/rt5514' into asoc-next 2017-07-03 16:15:15 +01:00
samsung ASoC: samsung: Constify hw_constraints 2017-06-13 21:33:26 +01:00
sh ASoC: Updates for v4.13 2017-07-03 19:51:42 +02:00
sirf ASoC: sirf: Added blank line after declarations 2017-03-07 14:31:51 +01:00
spear
sti ASoC: sti: Fix error handling if of_clk_get() fails 2017-04-30 21:30:52 +09:00
stm ASoC: stm32: sai: remove some stray tabs 2017-06-28 18:45:04 +01:00
sunxi ASoC: sun4i-codec: Add support for V3s codec 2017-06-06 19:30:00 +01:00
tegra ASoC: tegra: Add blank line after declarations 2017-03-07 14:29:51 +01:00
txx9 ASoC: txx9: Added requiered spaces. 2017-03-07 15:18:35 +01:00
ux500 ASoC: ux500: Added blank line after declarations 2017-03-07 14:31:27 +01:00
xtensa
zte ASoC: zx-i2s: flip I2S master/slave mode 2017-06-19 17:19:39 +01:00
Kconfig Merge remote-tracking branches 'asoc/topic/sta529', 'asoc/topic/sti', 'asoc/topic/stm', 'asoc/topic/sunxi' and 'asoc/topic/tas2552' into asoc-next 2017-04-30 22:16:31 +09:00
Makefile Merge remote-tracking branches 'asoc/topic/sta529', 'asoc/topic/sti', 'asoc/topic/stm', 'asoc/topic/sunxi' and 'asoc/topic/tas2552' into asoc-next 2017-04-30 22:16:31 +09:00
soc-ac97.c ASoC: Fixup some small kernel-doc typos 2017-01-12 17:23:01 +00:00
soc-cache.c
soc-compress.c ASoC: compress: Derive substream from stream based on direction 2017-06-19 17:11:25 +01:00
soc-core.c ASoC: fix pcm-creation regression 2017-07-17 15:50:32 +01:00
soc-dapm.c ASoC: dapm: fix some pointer error handling 2017-01-20 13:11:02 +00:00
soc-devres.c
soc-generic-dmaengine-pcm.c ASoC: Revert "Drop SND_DMAENGINE_PCM_FLAG_CUSTOM_CHANNEL_NAME flag" 2017-01-23 18:16:33 +00:00
soc-io.c
soc-jack.c ASoC: jack: add snd_soc_codec_set_jack 2017-04-10 19:46:09 +01:00
soc-ops.c ASoC: Fixup some small kernel-doc typos 2017-01-12 17:23:01 +00:00
soc-pcm.c ASoC: fix pcm-creation regression 2017-07-17 15:50:32 +01:00
soc-topology.c Merge remote-tracking branches 'asoc/topic/stm32', 'asoc/topic/sunxi', 'asoc/topic/tlv320dac31xx', 'asoc/topic/topology' and 'asoc/topic/wm-adsp' into asoc-next 2017-07-03 16:15:20 +01:00
soc-utils.c ASoC: core: Add component pin control functions 2016-11-30 17:16:09 +00:00