The patch number 9909 was added via Mauro Carvalho Chehab <mche...@redhat.com>
to http://linuxtv.org/hg/v4l-dvb master development tree.

Kernel patches in this development tree may be modified to be backward
compatible with older kernels. Compatibility modifications will be
removed before inclusion into the mainstream Kernel

If anyone has any objections, please let us know by sending a message to:
        v4l-dvb-maintai...@linuxtv.org

------

From: Mauro Carvalho Chehab  <mche...@redhat.com>
em28xx: move dev->lock from res_free to the caller routines


Priority: normal

Signed-off-by: Mauro Carvalho Chehab <mche...@redhat.com>


---

 linux/drivers/media/video/em28xx/em28xx-video.c |    7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff -r 961e8e95ae6c -r 40b02ddf9efc 
linux/drivers/media/video/em28xx/em28xx-video.c
--- a/linux/drivers/media/video/em28xx/em28xx-video.c   Tue Dec 16 16:25:46 
2008 -0200
+++ b/linux/drivers/media/video/em28xx/em28xx-video.c   Tue Dec 16 21:00:49 
2008 -0200
@@ -622,10 +622,8 @@ static void res_free(struct em28xx_fh *f
 {
        struct em28xx    *dev = fh->dev;
 
-       mutex_lock(&dev->lock);
        fh->stream_on = 0;
        dev->stream_on = 0;
-       mutex_unlock(&dev->lock);
 }
 
 /*
@@ -1293,7 +1291,9 @@ static int vidioc_streamoff(struct file 
                return -EINVAL;
 
        videobuf_streamoff(&fh->vb_vidq);
+       mutex_lock(&dev->lock);
        res_free(fh);
+       mutex_unlock(&dev->lock);
 
        return 0;
 }
@@ -1740,10 +1740,9 @@ static int em28xx_v4l2_close(struct inod
        em28xx_videodbg("users=%d\n", dev->users);
 
 
+       mutex_lock(&dev->lock);
        if (res_check(fh))
                res_free(fh);
-
-       mutex_lock(&dev->lock);
 
        if (dev->users == 1) {
                videobuf_stop(&fh->vb_vidq);


---

Patch is available at: 
http://linuxtv.org/hg/v4l-dvb/rev/40b02ddf9efc2364b3325b0ef5cc5bedac1750da

_______________________________________________
linuxtv-commits mailing list
linuxtv-commits@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linuxtv-commits

Reply via email to