Re: [PATCH v2] [media] vb2: include lengths in dmabuf qbuf debug message
From: Sakari Ailus
Date: Wed Jul 20 2016 - 19:08:42 EST
Hi Javier,
On Wed, Jul 20, 2016 at 06:56:52PM -0400, Javier Martinez Canillas wrote:
> Hello Sakari,
>
> On 07/20/2016 03:52 PM, Sakari Ailus wrote:
> > On Wed, Jul 20, 2016 at 12:07:55PM -0400, Javier Martinez Canillas wrote:
> >> If the VIDIOC_QBUF ioctl fails due a wrong dmabuf length, it's
> >> useful to get the invalid and minimum lengths as a debug info.
> >>
> >> Before this patch:
> >>
> >> vb2-core: __qbuf_dmabuf: invalid dmabuf length for plane 1
> >>
> >> After this patch:
> >>
> >> vb2-core: __qbuf_dmabuf: invalid dmabuf length 221248 for plane 1, minimum length 410880
> >>
> >> Signed-off-by: Javier Martinez Canillas <javier@xxxxxxxxxxxxxxx>
> >>
> >> ---
> >>
> >> Changes in v2:
> >> - Use %u instead of %d (Sakari Ailus)
> >> - Include min_length (Sakari Ailus)
> >>
> >> drivers/media/v4l2-core/videobuf2-core.c | 6 ++++--
> >> 1 file changed, 4 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/media/v4l2-core/videobuf2-core.c b/drivers/media/v4l2-core/videobuf2-core.c
> >> index b6fbc04f9699..bbba50d6e1ad 100644
> >> --- a/drivers/media/v4l2-core/videobuf2-core.c
> >> +++ b/drivers/media/v4l2-core/videobuf2-core.c
> >> @@ -1227,8 +1227,10 @@ static int __qbuf_dmabuf(struct vb2_buffer *vb, const void *pb)
> >> planes[plane].length = dbuf->size;
> >>
> >> if (planes[plane].length < vb->planes[plane].min_length) {
> >> - dprintk(1, "invalid dmabuf length for plane %d\n",
> >> - plane);
> >> + dprintk(1, "invalid dmabuf length %u for plane %d, "
> >> + "minimum length %u\n",
> >
> > You shouldn't split strings. It breaks grep.
> >
>
> Yes I know but if I didn't split the line, it would had been longer than
> the max 80 character per line convention. On those situations I follow
> what's already done in the file for consistency and most strings in the
> videobuf2-core file, whose lines are over 80 characters, are being split.
>
> But if having a longer line is preferred, I'll happily re-spin the patch.
I guess in videobuf2's case it's that the strings contain lots of format
specifiers --- it's not that useful to be able to grep those. I think this
case is a borderline one.
Up to you. You've got my ack.
> > With that changed,
> >
> > Acked-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> >
> >> + planes[plane].length, plane,
> >> + vb->planes[plane].min_length);
> >> dma_buf_put(dbuf);
> >> ret = -EINVAL;
> >> goto err;
> >
>
> Best regards,
> --
> Javier Martinez Canillas
> Open Source Group
> Samsung Research America
--
Kind regards,
Sakari Ailus
e-mail: sakari.ailus@xxxxxx XMPP: sailus@xxxxxxxxxxxxxx