-diff -Nurb linux-2.6.22-592/net/core/net-sysfs.c linux-2.6.22-594/net/core/net-sysfs.c
---- linux-2.6.22-592/net/core/net-sysfs.c 2008-02-29 08:45:15.000000000 -0500
-+++ linux-2.6.22-594/net/core/net-sysfs.c 2008-02-29 08:55:47.000000000 -0500
-@@ -190,6 +190,40 @@
+diff -Nurb linux-2.6.22-593/net/core/net-sysfs.c linux-2.6.22-594/net/core/net-sysfs.c
+--- linux-2.6.22-593/net/core/net-sysfs.c 2008-02-29 09:01:43.000000000 -0500
++++ linux-2.6.22-594/net/core/net-sysfs.c 2008-02-29 09:20:20.000000000 -0500
+@@ -190,6 +190,41 @@
return netdev_store(device, attr, buf, len, change_mtu);
}
-+static ssize_t show_new_ns_pid(struct class_device *cd, char *buf)
++static ssize_t show_new_ns_pid(struct device *cd, struct device_attribute *attr, char *buf)
+{
+ return -EPERM;
+}
++
+static int change_new_ns_pid(struct net_device *dev, unsigned long new_ns_pid)
+{
+ struct task_struct *tsk;
+ }
+ return err;
+}
-+static ssize_t store_new_ns_pid(struct class_device *cd, const char *buf, size_t len)
++static ssize_t store_new_ns_pid(struct device *cd, struct device_attribute *attr, const char *buf, size_t len)
+{
-+ return netdev_store(cd, buf, len, change_new_ns_pid);
++ return netdev_store(cd, attr, buf, len, change_new_ns_pid);
+}
+
NETDEVICE_SHOW(flags, fmt_hex);
static int change_flags(struct net_device *dev, unsigned long new_flags)
-@@ -249,6 +283,7 @@
+@@ -249,6 +284,7 @@
__ATTR(tx_queue_len, S_IRUGO | S_IWUSR, show_tx_queue_len,
store_tx_queue_len),
__ATTR(weight, S_IRUGO | S_IWUSR, show_weight, store_weight),