aboutsummaryrefslogtreecommitdiffstats
path: root/k2.patch
diff options
Diffstat (limited to 'k2.patch')
-rw-r--r--k2.patch71
1 files changed, 71 insertions, 0 deletions
diff --git a/k2.patch b/k2.patch
new file mode 100644
index 00000000000000..053d3c9f78fa99
--- /dev/null
+++ b/k2.patch
@@ -0,0 +1,71 @@
+---
+ net/bridge/br_if.c | 2 +-
+ net/bridge/br_private.h | 2 +-
+ net/bridge/br_sysfs_br.c | 14 ++++----------
+ net/bridge/br_sysfs_if.c | 2 +-
+ 4 files changed, 7 insertions(+), 13 deletions(-)
+
+--- a/net/bridge/br_if.c
++++ b/net/bridge/br_if.c
+@@ -133,7 +133,7 @@ static void del_nbp(struct net_bridge_po
+ struct net_bridge *br = p->br;
+ struct net_device *dev = p->dev;
+
+- sysfs_remove_link(&br->ifobj, dev->name);
++ sysfs_remove_link(br->ifobj, dev->name);
+
+ dev_set_promiscuity(dev, -1);
+
+--- a/net/bridge/br_private.h
++++ b/net/bridge/br_private.h
+@@ -124,7 +124,7 @@ struct net_bridge
+ struct timer_list tcn_timer;
+ struct timer_list topology_change_timer;
+ struct timer_list gc_timer;
+- struct kobject ifobj;
++ struct kobject *ifobj;
+ };
+
+ extern struct notifier_block br_device_notifier;
+--- a/net/bridge/br_sysfs_br.c
++++ b/net/bridge/br_sysfs_br.c
+@@ -426,16 +426,10 @@ int br_sysfs_addbr(struct net_device *de
+ goto out2;
+ }
+
+-
+- kobject_set_name(&br->ifobj, SYSFS_BRIDGE_PORT_SUBDIR);
+- br->ifobj.ktype = NULL;
+- br->ifobj.kset = NULL;
+- br->ifobj.parent = brobj;
+-
+- err = kobject_register(&br->ifobj);
+- if (err) {
++ br->ifobj = kobject_create_and_add(SYSFS_BRIDGE_PORT_SUBDIR, brobj);
++ if (!br->ifobj) {
+ pr_info("%s: can't add kobject (directory) %s/%s\n",
+- __FUNCTION__, dev->name, kobject_name(&br->ifobj));
++ __FUNCTION__, dev->name, SYSFS_BRIDGE_PORT_SUBDIR);
+ goto out3;
+ }
+ return 0;
+@@ -453,7 +447,7 @@ void br_sysfs_delbr(struct net_device *d
+ struct kobject *kobj = &dev->dev.kobj;
+ struct net_bridge *br = netdev_priv(dev);
+
+- kobject_unregister(&br->ifobj);
++ kobject_unregister(br->ifobj);
+ sysfs_remove_bin_file(kobj, &bridge_forward);
+ sysfs_remove_group(kobj, &bridge_group);
+ }
+--- a/net/bridge/br_sysfs_if.c
++++ b/net/bridge/br_sysfs_if.c
+@@ -229,7 +229,7 @@ int br_sysfs_addif(struct net_bridge_por
+ goto out2;
+ }
+
+- err= sysfs_create_link(&br->ifobj, &p->kobj, p->dev->name);
++ err= sysfs_create_link(br->ifobj, &p->kobj, p->dev->name);
+ out2:
+ return err;
+ }