linux-stable/drivers/media
Max Kellermann 48775cb73c [media] pctv452e: move buffer to heap, no mutex
commit 73d5c5c864 ("[media] pctv452e: don't do DMA on stack") caused
a NULL pointer dereference which occurs when dvb_usb_init()
calls dvb_usb_device_power_ctrl() for the first time, before the
frontend has been attached. It also caused a recursive deadlock because
tt3650_ci_msg_locked() has already locked the mutex.

So, partially revert it, but move the buffer to the heap
(DMA capable), not to the stack (may not be DMA capable).
Instead of sharing one buffer which needs mutex protection,
do a new heap allocation for each call.

Fixes: commit 73d5c5c864 ("[media] pctv452e: don't do DMA on stack")

Cc: stable@vger.kernel.org # For Kernel 4.9
Signed-off-by: Max Kellermann <max.kellermann@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2016-12-21 07:15:36 -02:00
..
cec [media] cec: fix race between configuring and unconfiguring 2016-12-21 07:03:27 -02:00
common [media] v4l2-tpg: Init hv_enc field with a valid value 2016-11-29 12:12:13 -02:00
dvb-core [media] dvb-net: split the logic at dvb_net_ule() into other functions 2016-11-25 06:45:14 -02:00
dvb-frontends [media] mn88472: fix chip id check on probe 2016-12-01 12:47:22 -02:00
firewire [media] firewire: don't break long lines 2016-10-21 10:06:00 -02:00
i2c [media] smiapp: Make suspend and resume functions __maybe_unused 2016-12-21 06:53:35 -02:00
mmc
pci [media] media/cobalt: use pci_irq_allocate_vectors 2016-12-21 07:04:42 -02:00
platform [media] s5p-mfc: Add support for MFC v8 available in Exynos 5433 SoCs 2016-11-30 09:22:07 -02:00
radio [media] wl128x: use KERNEL_CONT where needed 2016-11-18 09:37:24 -02:00
rc [media] lirc: fix error paths in lirc_cdev_add() 2016-12-01 12:46:00 -02:00
spi [media] gs1662: drop kfree for memory allocated with devm_kzalloc 2016-10-24 17:59:08 -02:00
tuners Revert "[media] dvb_frontend: merge duplicate dvb_tuner_ops.release implementations" 2016-11-18 20:44:33 -02:00
usb [media] pctv452e: move buffer to heap, no mutex 2016-12-21 07:15:36 -02:00
v4l2-core [media] v4l: Add description of the Y8I, Y12I and Z16 formats 2016-11-23 20:04:43 -02:00
cec-edid.c
Kconfig [media] Kconfig: fix breakages when DVB_CORE is not selected 2016-11-18 17:59:17 -02:00
Makefile [media] cec: move the CEC framework out of staging and to media 2016-11-16 15:40:20 -02:00
media-device.c [media] media: remove obsolete Media Device Managed resource interfaces 2016-11-25 07:40:40 -02:00
media-devnode.c
media-entity.c [media] media-entity: clear media_gobj.mdev in _destroy() 2016-11-18 15:19:16 -02:00