linux/drivers/media
Alexandre Courbot 17d716e926 [media] s5p-jpeg: fix recursive spinlock acquisition
v4l2_m2m_job_finish(), which is called from the interrupt handler with
slock acquired, can call the device_run() hook immediately if another
context was in the queue. This hook also acquires slock, resulting in
a deadlock for this scenario.

Fix this by releasing slock right before calling v4l2_m2m_job_finish().
This is safe to do as the state of the hardware cannot change before
v4l2_m2m_job_finish() is called anyway.

Signed-off-by: Alexandre Courbot <acourbot@chromium.org>
Acked-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
2017-06-13 13:56:49 -03:00
..
cec [media] cec: improve debug messages 2017-06-07 09:29:08 -03:00
common [media] b2c2: constify nxt200x_config structure 2017-04-17 12:18:18 -03:00
dvb-core [media] dvb_ca_en50221: Fix wrong EXPORT_SYMBOL order 2017-06-07 13:21:25 -03:00
dvb-frontends [media] au8522: Set the initial modulation 2017-06-06 07:51:33 -03:00
firewire [media] firewire: don't break long lines 2016-10-21 10:06:00 -02:00
i2c [media] ad5820: unregister async sub-device 2017-06-08 12:34:17 -03:00
mmc
pci [media] cx18: Fix a sleep-in-atomic bug in snd_cx18_pcm_hw_free 2017-06-07 12:28:50 -03:00
platform [media] s5p-jpeg: fix recursive spinlock acquisition 2017-06-13 13:56:49 -03:00
radio [media] wl128x: use setup_timer 2017-04-10 14:56:37 -03:00
rc [media] rc-core: cleanup rc_register_device pt2 2017-06-13 13:55:01 -03:00
spi [media] gs1662: drop kfree for memory allocated with devm_kzalloc 2016-10-24 17:59:08 -02:00
tuners [media] xc5000: Don't spin waiting for analog lock 2017-06-06 07:51:05 -03:00
usb [media] pvrusb2: remove redundant check on cnt > 8 2017-06-07 13:52:41 -03:00
v4l2-core [media] vb2: Move buffer cache synchronisation to prepare from queue 2017-06-08 14:52:02 -03:00
Kconfig [media] cec: rename MEDIA_CEC_NOTIFIER to CEC_NOTIFIER 2017-06-04 15:23:35 -03:00
Makefile [media] cec: select CEC_CORE instead of depend on it 2017-06-04 15:23:33 -03:00
media-device.c [media] media: Rename graph and pipeline structs and functions 2017-01-27 16:13:24 -02:00
media-devnode.c media: utilize new cdev_device_add helper function 2017-03-21 06:44:33 +01:00
media-entity.c [media] media-entity: only call dev_dbg_obj if mdev is not NULL 2017-04-19 08:15:51 -03:00