diff options
author | Andreas Bombe <aeb@debian.org> | 2010-03-21 15:02:45 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2010-05-19 11:57:13 -0400 |
commit | dab7e3106ddd6cbc3b55301228407b9d17ce7773 (patch) | |
tree | 1b6caa87522844e7ea8cc01932365201271f1afd /drivers/media/video/vivi.c | |
parent | 0a062033f727dc041691bfd768f4cf0598f559a1 (diff) |
V4L/DVB: V4L2: Replace loops for finding max buffers in VIDIOC_REQBUFS callbacks
Due to obvious copy and paste coding a number of video capture drivers
which implement a limit on the buffer memory decremented the user
supplied buffer count in a while loop until it reaches an acceptable
value.
This is a silly thing to do when the maximum value can be directly
computed.
Signed-off-by: Andreas Bombe <aeb@debian.org>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/vivi.c')
-rw-r--r-- | drivers/media/video/vivi.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/media/video/vivi.c b/drivers/media/video/vivi.c index cdbe70385c12..5a736b8a5a33 100644 --- a/drivers/media/video/vivi.c +++ b/drivers/media/video/vivi.c | |||
@@ -749,8 +749,8 @@ buffer_setup(struct videobuf_queue *vq, unsigned int *count, unsigned int *size) | |||
749 | if (0 == *count) | 749 | if (0 == *count) |
750 | *count = 32; | 750 | *count = 32; |
751 | 751 | ||
752 | while (*size * *count > vid_limit * 1024 * 1024) | 752 | if (*size * *count > vid_limit * 1024 * 1024) |
753 | (*count)--; | 753 | *count = (vid_limit * 1024 * 1024) / *size; |
754 | 754 | ||
755 | dprintk(dev, 1, "%s, count=%d, size=%d\n", __func__, | 755 | dprintk(dev, 1, "%s, count=%d, size=%d\n", __func__, |
756 | *count, *size); | 756 | *count, *size); |