b.gc_timer_value = br_timer_value(&br->gc_timer);
rcu_read_unlock();
- if (copy_to_user((void *)args[1], &b, sizeof(b)))
+ if (copy_to_user((void __user *)args[1], &b, sizeof(b)))
return -EFAULT;
return 0;
memset(indices, 0, num*sizeof(int));
get_port_ifindices(br, indices, num);
- if (copy_to_user((void *)args[1], indices, num*sizeof(int)))
+ if (copy_to_user((void __user *)args[1], indices, num*sizeof(int)))
num = -EFAULT;
kfree(indices);
return num;
rcu_read_unlock();
- if (copy_to_user((void *)args[1], &p, sizeof(p)))
+ if (copy_to_user((void __user *)args[1], &p, sizeof(p)))
return -EFAULT;
return 0;
return -EOPNOTSUPP;
}
-static int old_deviceless(unsigned long uarg)
+static int old_deviceless(void __user *uarg)
{
unsigned long args[3];
- if (copy_from_user(args, (void *)uarg, sizeof(args)))
+ if (copy_from_user(args, uarg, sizeof(args)))
return -EFAULT;
switch (args[0]) {
memset(indices, 0, args[2]*sizeof(int));
args[2] = get_bridge_ifindices(indices, args[2]);
- ret = copy_to_user((void *)args[1], indices, args[2]*sizeof(int))
+ ret = copy_to_user((void __user *)args[1], indices, args[2]*sizeof(int))
? -EFAULT : args[2];
kfree(indices);
if (!capable(CAP_NET_ADMIN))
return -EPERM;
- if (copy_from_user(buf, (void *)args[1], IFNAMSIZ))
+ if (copy_from_user(buf, (void __user *)args[1], IFNAMSIZ))
return -EFAULT;
buf[IFNAMSIZ-1] = 0;
return -EOPNOTSUPP;
}
-int br_ioctl_deviceless_stub(unsigned int cmd, unsigned long uarg)
+int br_ioctl_deviceless_stub(unsigned int cmd, void __user *uarg)
{
switch (cmd) {
case SIOCGIFBR:
if (!capable(CAP_NET_ADMIN))
return -EPERM;
- if (copy_from_user(buf, (void __user *) uarg, IFNAMSIZ))
+ if (copy_from_user(buf, uarg, IFNAMSIZ))
return -EFAULT;
buf[IFNAMSIZ-1] = 0;
*/
static DECLARE_MUTEX(br_ioctl_mutex);
-static int (*br_ioctl_hook)(unsigned int cmd, unsigned long arg) = NULL;
+static int (*br_ioctl_hook)(unsigned int cmd, void __user *arg) = NULL;
-void brioctl_set(int (*hook)(unsigned int, unsigned long))
+void brioctl_set(int (*hook)(unsigned int, void __user *))
{
down(&br_ioctl_mutex);
br_ioctl_hook = hook;
unsigned long arg)
{
struct socket *sock;
+ void __user *argp = (void __user *)arg;
int pid, err;
unlock_kernel();
down(&br_ioctl_mutex);
if (br_ioctl_hook)
- err = br_ioctl_hook(cmd, arg);
+ err = br_ioctl_hook(cmd, argp);
up(&br_ioctl_mutex);
break;
case SIOCGIFVLAN: