ecb867ba89f194bb113c9a8933a5a133498d812e
[openwrt/staging/ansuel.git] /
1 From ecf1a0cc8481cbfa9c118349930a58ce36605c38 Mon Sep 17 00:00:00 2001
2 From: Dave Stevenson <dave.stevenson@raspberrypi.org>
3 Date: Thu, 24 Jan 2019 16:40:01 +0000
4 Subject: [PATCH] staging: bcm2835-codec: variable vb2 may be used
5 uninitialised
6
7 In op_buffer_cb, the failure path checked whether there was
8 an associated vb2 buffer before the variable vb2 had been
9 assigned.
10
11 Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.org>
12 ---
13 .../vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c | 6 +++---
14 1 file changed, 3 insertions(+), 3 deletions(-)
15
16 --- a/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
17 +++ b/drivers/staging/vc04_services/bcm2835-codec/bcm2835-v4l2-codec.c
18 @@ -634,6 +634,9 @@ static void op_buffer_cb(struct vchiq_mm
19 __func__, status, mmal_buf, mmal_buf->length,
20 mmal_buf->mmal_flags, mmal_buf->pts);
21
22 + buf = container_of(mmal_buf, struct m2m_mmal_buffer, mmal);
23 + vb2 = &buf->m2m.vb;
24 +
25 if (status) {
26 /* error in transfer */
27 if (vb2) {
28 @@ -658,9 +661,6 @@ static void op_buffer_cb(struct vchiq_mm
29 return;
30 }
31
32 - buf = container_of(mmal_buf, struct m2m_mmal_buffer, mmal);
33 - vb2 = &buf->m2m.vb;
34 -
35 v4l2_dbg(3, debug, &ctx->dev->v4l2_dev, "%s: length %lu, flags %x, idx %u\n",
36 __func__, mmal_buf->length, mmal_buf->mmal_flags,
37 vb2->vb2_buf.index);