Re: [PATCH -next] bridge: fix build for CONFIG_SYSFS disabled

Stephen Hemminger
2010-05-17T17:57:11Z

On Mon, 17 May 2010 09:17:56 -0700
Randy Dunlap <randy.dunlap@oracle.com> wrote:

> From: Randy Dunlap <randy.dunlap@oracle.com>
>
> Fix build when CONFIG_SYSFS is not enabled:
>
> net/bridge/br_if.c:136: error: 'struct net_bridge_port' has no member named 'sysfs_name'
>
> Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
> ---
> net/bridge/br_if.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> --- linux-next-20100517.orig/net/bridge/br_if.c
> +++ linux-next-20100517/net/bridge/br_if.c
> @@ -133,7 +133,9 @@ static void del_nbp(struct net_bridge_po
> struct net_bridge *br = p->br;
> struct net_device *dev = p->dev;
>
> +#ifdef CONFIG_SYSFS
> sysfs_remove_link(br->ifobj, p->sysfs_name);
> +#endif
>
> dev_set_promiscuity(dev, -1);
>

I don't like peppering code with #ifdef like this.

Turns out that in this place sysfs_name is always the same
as the device name so instead:

--- a/net/bridge/br_if.c 2010-05-17 10:40:49.808031840 -0700
+++ b/net/bridge/br_if.c 2010-05-17 10:49:47.767669246 -0700
@@ -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, p->sysfs_name);
+ sysfs_remove_link(br->ifobj, p->dev->name);

dev_set_promiscuity(dev, -1);

--