summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinux Build Service Account <lnxbuild@localhost>2016-11-15 04:07:40 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2016-11-15 04:07:40 -0800
commit27433b0bdc165e0eb7c5cf5accd4583a8f872cd1 (patch)
tree316cde0bf3ccff9392f6c6d02ce91a02360680f0
parent6389e371febf404f5418198dfef87d066680eeca (diff)
parentc9cfe96ceab9bebf69ef09e41f3c46a1b41ec9ce (diff)
Merge "msm: vidc: Avoid unnecessary buffer requirements call"
-rw-r--r--drivers/media/platform/msm/vidc/msm_v4l2_vidc.c18
1 files changed, 13 insertions, 5 deletions
diff --git a/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c b/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c
index 3633d1fb3cd1..5a8a19fddf9b 100644
--- a/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c
+++ b/drivers/media/platform/msm/vidc/msm_v4l2_vidc.c
@@ -138,12 +138,20 @@ int msm_v4l2_reqbufs(struct file *file, void *fh,
{
struct msm_vidc_inst *vidc_inst = get_vidc_inst(file, fh);
int rc = 0;
- if (!b->count)
+ if (!b->count) {
rc = msm_vidc_release_buffers(vidc_inst, b->type);
- if (rc)
- dprintk(VIDC_WARN,
- "Failed in %s for release output buffers\n", __func__);
- return msm_vidc_reqbufs((void *)vidc_inst, b);
+ if (rc)
+ dprintk(VIDC_WARN,
+ "Failed in %s for release output buffers\n",
+ __func__);
+ } else {
+ rc = msm_vidc_reqbufs((void *)vidc_inst, b);
+ if (rc)
+ dprintk(VIDC_WARN,
+ "Failed in %s for buffer requirements\n",
+ __func__);
+ }
+ return rc;
}
int msm_v4l2_prepare_buf(struct file *file, void *fh,