]> git.karo-electronics.de Git - karo-tx-linux.git/commit
ENGR00266881 mxc vout:Flush workqueue when change is needed for streaming
authorLiu Ying <Ying.Liu@freescale.com>
Thu, 13 Jun 2013 04:50:27 +0000 (12:50 +0800)
committerOliver Wendt <ow@karo-electronics.de>
Mon, 30 Sep 2013 12:14:05 +0000 (14:14 +0200)
commit426bb71930cc0f225f13e530b6eef5b0dafa301f
tree17dffd9722fcc73b9b65b0c4148b3034c47e1aa8
parenta3fa766a5b6980103eae79c35cbf0830f9082bd0
ENGR00266881 mxc vout:Flush workqueue when change is needed for streaming

We currently call cancel_work_sync() to have all left work be done. But,
this is not safe to make sure all left work being done successfully.
Instead, chances are that some work may be cancelled before starting
to be done, which may cause frame lost and make us hang at upcoming
wait_event_interruptible() in videobuf_waiton() called from video buffer
core v1 framework's dqbuf API. This patch replaces the function
call cancel_work_sync() with flush_workqueue() to fix the issue.

Signed-off-by: Liu Ying <Ying.Liu@freescale.com>
drivers/media/video/mxc/output/mxc_vout.c