V4L/DVB (12203): radio-si470x: fix lock imbalance
authorJiri Slaby <jirislaby@gmail.com>
Sun, 5 Jul 2009 18:44:20 +0000 (15:44 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 5 Jul 2009 22:21:49 +0000 (19:21 -0300)
There is one path with omitted unlock in si470x_fops_release. Fix that.

Cc: Tobias Lorenz <tobias.lorenz@gmx.net>
Signed-off-by: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/radio/radio-si470x.c

index 640421ceb24a2a48918b1692367c5394c6fd7968..46d21632961138d76be607c02b672b34714a4d61 100644 (file)
@@ -1200,7 +1200,7 @@ static int si470x_fops_release(struct file *file)
                        video_unregister_device(radio->videodev);
                        kfree(radio->buffer);
                        kfree(radio);
-                       goto done;
+                       goto unlock;
                }
 
                /* stop rds reception */
@@ -1213,9 +1213,8 @@ static int si470x_fops_release(struct file *file)
                retval = si470x_stop(radio);
                usb_autopm_put_interface(radio->intf);
        }
-
+unlock:
        mutex_unlock(&radio->disconnect_lock);
-
 done:
        return retval;
 }