[PATCH] v4l2: modify return value of VIDIOC_REQBUFS ioctl

From: NÃmeth MÃrton
Date: Wed Apr 29 2009 - 14:58:32 EST


The V4L2 ioctls usually return 0 when the operation was successful
and -1 in case of error. Currently VIDIOC_REQBUFS returns the
number of buffers which is redundant because this information is
available in count field of struct v4l2_requestbuffers. The
V4L2 API specification, revision 0.24 [1] explicitly specifies for
VIDIOC_REQBUFS that the return value shall be 0 on success.

The patch was tested with v4l-test 0.13 [2] with vivi driver.

References:
[1] V4L2 API specification, revision 0.24
http://v4l2spec.bytesex.org/spec/r13696.htm

[2] v4l-test: Test environment for Video For Linux Two API
http://v4l-test.sourceforge.net/

Signed-off-by: MÃrton NÃmeth <nm127@xxxxxxxxxxx>
---
--- linux-2.6.30-rc3/drivers/media/video/videobuf-core.c.orig 2009-04-22 05:07:00.000000000 +0200
+++ linux-2.6.30-rc3/drivers/media/video/videobuf-core.c 2009-04-29 18:30:15.000000000 +0200
@@ -439,6 +439,7 @@ int videobuf_reqbufs(struct videobuf_que
}

req->count = retval;
+ retval = 0;

done:
mutex_unlock(&q->vb_lock);
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/