[media] videobuf2: Fix a bug in fileio emulation error handling
authorHans de Goede <hdegoede@redhat.com>
Tue, 8 May 2012 17:47:39 +0000 (14:47 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 14 May 2012 12:20:54 +0000 (09:20 -0300)
Various error paths in fileio_init where not setting the request-count
to 0 when unrequesting the buffers on error to init the fileio emulation.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/videobuf2-core.c

index 3786d88183eb024af88467c4d12dea8d272a0dcc..9d4e9edbd2e7a661b5e07a35637bf5ad28b65c14 100644 (file)
@@ -1857,7 +1857,6 @@ static int __vb2_init_fileio(struct vb2_queue *q, int read)
         * (multiplane buffers are not supported).
         */
        if (q->bufs[0]->num_planes != 1) {
-               fileio->req.count = 0;
                ret = -EBUSY;
                goto err_reqbufs;
        }
@@ -1904,6 +1903,7 @@ static int __vb2_init_fileio(struct vb2_queue *q, int read)
        return ret;
 
 err_reqbufs:
+       fileio->req.count = 0;
        vb2_reqbufs(q, &fileio->req);
 
 err_kfree: