V4L/DVB (8894): pvrusb2: Remove BKL
authorMike Isely <isely@pobox.com>
Sat, 30 Aug 2008 18:11:16 +0000 (15:11 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 12 Oct 2008 11:36:57 +0000 (09:36 -0200)
The earlier change from Hans Verkuil that pushed the BKL from
video_open() down into the drivers should be unneeded for the pvrusb2
driver.  This driver's implementation for open already protects its
internal structures through other means, thus the BKL is not required.
This change reverses Hans' previous change, for the pvrusb2 driver.

It probably would have been a good idea for Hans to previously have
asked for my ack before committing his change.

Signed-off-by: Mike Isely <isely@pobox.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/video/pvrusb2/pvrusb2-v4l2.c

index 26ffaa276c5198528083aa677904861f0575921a..00306faeac015f1ab9a99c8aaf32b894032bc444 100644 (file)
@@ -932,7 +932,6 @@ static int pvr2_v4l2_open(struct inode *inode, struct file *file)
        unsigned int input_cnt,idx;
        int ret = 0;
 
-       lock_kernel();
        dip = container_of(video_devdata(file),struct pvr2_v4l2_dev,devbase);
 
        vp = dip->v4lp;
@@ -943,13 +942,11 @@ static int pvr2_v4l2_open(struct inode *inode, struct file *file)
        if (!pvr2_hdw_dev_ok(hdw)) {
                pvr2_trace(PVR2_TRACE_OPEN_CLOSE,
                           "pvr2_v4l2_open: hardware not ready");
-               unlock_kernel();
                return -EIO;
        }
 
        fhp = kzalloc(sizeof(*fhp),GFP_KERNEL);
        if (!fhp) {
-               unlock_kernel();
                return -ENOMEM;
        }
 
@@ -979,7 +976,6 @@ static int pvr2_v4l2_open(struct inode *inode, struct file *file)
                           fhp);
 
                kfree(fhp);
-               unlock_kernel();
                return ret;
        }
 
@@ -996,7 +992,6 @@ static int pvr2_v4l2_open(struct inode *inode, struct file *file)
                           "Destroying pvr_v4l2_fh id=%p (input map failure)",
                           fhp);
                kfree(fhp);
-               unlock_kernel();
                return -ENOMEM;
        }
        input_cnt = 0;
@@ -1020,7 +1015,6 @@ static int pvr2_v4l2_open(struct inode *inode, struct file *file)
        v4l2_prio_open(&vp->prio,&fhp->prio);
 
        fhp->fw_mode_flag = pvr2_hdw_cpufw_get_enabled(hdw);
-       unlock_kernel();
 
        return 0;
 }