Skip to content

Commit

Permalink
Kobject: change net/bridge to use kobject_create_and_add
Browse files Browse the repository at this point in the history
The kobject in the bridge code is only used for registering with sysfs,
not for any lifespan rules.  This patch changes it to be only a pointer
and use the simpler api for this kind of thing.

Cc: Stephen Hemminger <[email protected]>
Cc: Kay Sievers <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
  • Loading branch information
gregkh committed Jan 25, 2008
1 parent 81e7c6a commit 43b98c4
Show file tree
Hide file tree
Showing 4 changed files with 7 additions and 13 deletions.
2 changes: 1 addition & 1 deletion net/bridge/br_if.c
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ static void del_nbp(struct net_bridge_port *p)
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);

Expand Down
2 changes: 1 addition & 1 deletion net/bridge/br_private.h
Original file line number Diff line number Diff line change
Expand Up @@ -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;
Expand Down
14 changes: 4 additions & 10 deletions net/bridge/br_sysfs_br.c
Original file line number Diff line number Diff line change
Expand Up @@ -426,16 +426,10 @@ int br_sysfs_addbr(struct net_device *dev)
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;
Expand All @@ -453,7 +447,7 @@ void br_sysfs_delbr(struct net_device *dev)
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);
}
2 changes: 1 addition & 1 deletion net/bridge/br_sysfs_if.c
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,7 @@ int br_sysfs_addif(struct net_bridge_port *p)
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;
}

0 comments on commit 43b98c4

Please sign in to comment.