summaryrefslogtreecommitdiff
path: root/drivers/media
diff options
context:
space:
mode:
authorSimon Farnsworth <simon.farnsworth@onelan.co.uk>2013-09-20 16:15:28 (GMT)
committerMauro Carvalho Chehab <m.chehab@samsung.com>2013-10-14 09:37:00 (GMT)
commit9c9cff55bf4f13dc2fffb5abe466f13e4ac155f9 (patch)
tree7dbe5aede4243caf9e71558819704c4e9e2243d1 /drivers/media
parentf527b17ace6794ec732b43be1e00c94da690d7d3 (diff)
downloadlinux-fsl-qoriq-9c9cff55bf4f13dc2fffb5abe466f13e4ac155f9.tar.xz
[media] saa7134: Fix crash when device is closed before streamoff
pm_qos_remove_request was not called on video_release, resulting in the PM core's list of requests being corrupted when the file handle was freed. This has no immediate symptoms, but later in operation, the kernel will panic as the PM core dereferences a dangling pointer. Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
Diffstat (limited to 'drivers/media')
-rw-r--r--drivers/media/pci/saa7134/saa7134-video.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/media/pci/saa7134/saa7134-video.c b/drivers/media/pci/saa7134/saa7134-video.c
index e12bbd8..fb60da8 100644
--- a/drivers/media/pci/saa7134/saa7134-video.c
+++ b/drivers/media/pci/saa7134/saa7134-video.c
@@ -1455,6 +1455,7 @@ static int video_release(struct file *file)
/* stop video capture */
if (res_check(fh, RESOURCE_VIDEO)) {
+ pm_qos_remove_request(&dev->qos_request);
videobuf_streamoff(&fh->cap);
res_free(dev,fh,RESOURCE_VIDEO);
}