search for: br_ioctl_device

Displaying 2 results from an estimated 2 matches for "br_ioctl_device".

2007 Apr 18
0
[Bridge] [PATCH] (4/11) bridge - ioctl cleanup and consolidation
..._do_ioctl(struct net_device *dev, struct ifreq *rq, int cmd) -{ - unsigned long args[4]; - unsigned long *data; - - if (cmd != SIOCDEVPRIVATE) - return -EOPNOTSUPP; - - data = (unsigned long *)rq->ifr_data; - if (copy_from_user(args, data, 4*sizeof(unsigned long))) - return -EFAULT; - - return br_ioctl_device(dev->priv, args[0], args[1], args[2], args[3]); -} - static struct net_device_stats *br_dev_get_stats(struct net_device *dev) { struct net_bridge *br; @@ -115,7 +100,7 @@ ether_setup(dev); - dev->do_ioctl = br_dev_do_ioctl; + dev->do_ioctl = br_dev_ioctl; dev->get_stats = br...
2007 Apr 18
1
[Bridge] [PATCH 2.4] bridge - eliminate br_ioctl_mutex
...include <linux/kernel.h> #include <linux/if_bridge.h> #include <linux/inetdevice.h> +#include <linux/rtnetlink.h> #include <asm/uaccess.h> #include "br_private.h" @@ -230,11 +231,8 @@ return -EOPNOTSUPP; } -static DECLARE_MUTEX(ioctl_mutex); - int br_ioctl_deviceless_stub(unsigned long arg) { - int err; unsigned long i[3]; if (!capable(CAP_NET_ADMIN)) @@ -243,11 +241,8 @@ if (copy_from_user(i, (void *)arg, 3*sizeof(unsigned long))) return -EFAULT; - down(&ioctl_mutex); - err = br_ioctl_deviceless(i[0], i[1], i[2]); - up(&ioctl_mutex);...