Re: [PATCH 10/12] [media] coda: fail to start streaming if userspace set invalid formats

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Philipp,

2015-02-23 16:20 GMT+01:00 Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>:
> Signed-off-by: Philipp Zabel <p.zabel@xxxxxxxxxxxxxx>
> ---
>  drivers/media/platform/coda/coda-common.c | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/platform/coda/coda-common.c b/drivers/media/platform/coda/coda-common.c
> index b42ccfc..4441179 100644
> --- a/drivers/media/platform/coda/coda-common.c
> +++ b/drivers/media/platform/coda/coda-common.c
> @@ -1282,12 +1282,23 @@ static int coda_start_streaming(struct vb2_queue *q, unsigned int count)
>         if (!(ctx->streamon_out & ctx->streamon_cap))
>                 return 0;
>
> +       q_data_dst = get_q_data(ctx, V4L2_BUF_TYPE_VIDEO_CAPTURE);
> +       if ((q_data_src->width != q_data_dst->width &&
> +            round_up(q_data_src->width, 16) != q_data_dst->width) ||
> +           (q_data_src->height != q_data_dst->height &&
> +            round_up(q_data_src->height, 16) != q_data_dst->height)) {
> +               v4l2_err(v4l2_dev, "can't convert %dx%d to %dx%d\n",
> +                        q_data_src->width, q_data_src->height,
> +                        q_data_dst->width, q_data_dst->height);
> +               ret = -EINVAL;
> +               goto err;
> +       }
> +

Shouldn't the driver check on queues related to encoding or decoding only ?
We don't need to set correct width/height from userspace if we are
encoding, or it should be done by s_fmt itself.

Thanks,
JM
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux