[PATCH 3.2 064/106] [media] vb2: Fix an off by one error in 'vb2_plane_vaddr'

From: Ben Hutchings
Date: Sat Sep 09 2017 - 18:45:16 EST

3.2.93-rc1 review patch. If anyone has any objections, please let me know.


From: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>

commit 5ebb6dd36c9f5fb37b1077b393c254d70a14cb46 upstream.

We should ensure that 'plane_no' is '< vb->num_planes' as done in
'vb2_plane_cookie' just a few lines below.

Fixes: e23ccc0ad925 ("[media] v4l: add videobuf2 Video for Linux 2 driver framework")

Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
Reviewed-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
Signed-off-by: Hans Verkuil <hans.verkuil@xxxxxxxxx>
Signed-off-by: Mauro Carvalho Chehab <mchehab@xxxxxxxxxxxxxxxx>
[bwh: Backported to 3.2: adjust filename, context]
Signed-off-by: Ben Hutchings <ben@xxxxxxxxxxxxxxx>
drivers/media/video/videobuf2-core.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- a/drivers/media/video/videobuf2-core.c
+++ b/drivers/media/video/videobuf2-core.c
@@ -731,7 +731,7 @@ void *vb2_plane_vaddr(struct vb2_buffer
struct vb2_queue *q = vb->vb2_queue;

- if (plane_no > vb->num_planes)
+ if (plane_no >= vb->num_planes)
return NULL;

return call_memop(q, plane_no, vaddr, vb->planes[plane_no].mem_priv);