[media] mem2mem: make queue lock in v4l2_m2m_poll interruptible

This patch makes the queue lock taken in v4l2_m2m_poll interruptible.

Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <m.chehab@samsung.com>
This commit is contained in:
Philipp Zabel 2014-05-26 10:49:22 -03:00 committed by Mauro Carvalho Chehab
parent 7e49027e62
commit a85fd20fb6
1 changed files with 6 additions and 2 deletions

View File

@ -568,8 +568,12 @@ unsigned int v4l2_m2m_poll(struct file *file, struct v4l2_m2m_ctx *m2m_ctx,
if (m2m_ctx->m2m_dev->m2m_ops->lock)
m2m_ctx->m2m_dev->m2m_ops->lock(m2m_ctx->priv);
else if (m2m_ctx->q_lock)
mutex_lock(m2m_ctx->q_lock);
else if (m2m_ctx->q_lock) {
if (mutex_lock_interruptible(m2m_ctx->q_lock)) {
rc |= POLLERR;
goto end;
}
}
spin_lock_irqsave(&src_q->done_lock, flags);
if (!list_empty(&src_q->done_list))