diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2012-03-27 08:51:00 (GMT) |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-04-09 13:15:28 (GMT) |
commit | ed0ee0ce0a3224dab5caa088a5f8b6df25924276 (patch) | |
tree | 710fb6f35ee2bf9e0ccd1aa8d3318ebb2b677f7f /mm | |
parent | d3a92d624806a7964ca3122f917ff2ba69e4cdd8 (diff) | |
download | linux-ed0ee0ce0a3224dab5caa088a5f8b6df25924276.tar.xz |
[media] uvcvideo: Fix race-related crash in uvc_video_clock_update()
The driver frees the clock samples buffer before stopping the video
buffers queue. If a DQBUF call arrives in-between,
uvc_video_clock_update() will be called with a NULL clock samples
buffer, leading to a crash. This occurs very frequently when using the
webcam with the flash browser plugin.
Move clock initialization/cleanup to uvc_video_enable() in order to free
the clock samples buffer after the queue is stopped. Make sure the clock
is reset at resume time to avoid miscalculating timestamps.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Cc: stable@vger.kernel.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'mm')
0 files changed, 0 insertions, 0 deletions