summaryrefslogtreecommitdiffstats
path: root/drivers/char/planb.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/char/planb.c')
-rw-r--r--drivers/char/planb.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/char/planb.c b/drivers/char/planb.c
index 1c6bf655b..524ab7be5 100644
--- a/drivers/char/planb.c
+++ b/drivers/char/planb.c
@@ -383,7 +383,7 @@ static void __planb_wait(struct planb *pb)
add_wait_queue(&pb->lockq, &wait);
repeat:
- current->state = TASK_UNINTERRUPTIBLE;
+ set_current_state(TASK_UNINTERRUPTIBLE);
if (pb->lock) {
schedule();
goto repeat;
@@ -1533,7 +1533,8 @@ static int planb_ioctl(struct video_device *dev, unsigned int cmd, void *arg)
DEBUG("PlanB: IOCTL VIDIOCSFBUF\n");
- if (!capable(CAP_SYS_ADMIN))
+ if (!capable(CAP_SYS_ADMIN)
+ || !capable(CAP_SYS_RAWIO))
return -EPERM;
if (copy_from_user(&v, arg,sizeof(v)))
return -EFAULT;
@@ -2359,7 +2360,7 @@ static void release_planb(void)
int init_module(void)
{
#else
-__initfunc(int init_planbs(struct video_init *unused))
+int __init init_planbs(struct video_init *unused)
{
#endif
int i;