Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 93d8bf9f authored by stephen hemminger's avatar stephen hemminger Committed by David S. Miller
Browse files

bridge: cleanup netpoll code



This started out with fixing a sparse warning, then I realized that
the wrapper function br_netpoll_info could just be collapsed away
by rolling it into the enable code.

Also, eliminate unnecessary goto's

Signed-off-by: default avatarStephen Hemminger <stephen@networkplumber.org>
Reviewed-by: default avatarJiri Pirko <jiri@resnulli.us>
Acked-by: default avatarNeil Horman <nhorman@tuxdriver.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent f5280948
Loading
Loading
Loading
Loading
+6 −6
Original line number Diff line number Diff line
@@ -244,22 +244,22 @@ static int br_netpoll_setup(struct net_device *dev, struct netpoll_info *ni,
int br_netpoll_enable(struct net_bridge_port *p, gfp_t gfp)
{
	struct netpoll *np;
	int err = 0;
	int err;

	if (!p->br->dev->npinfo)
		return 0;

	np = kzalloc(sizeof(*p->np), gfp);
	err = -ENOMEM;
	if (!np)
		goto out;
		return -ENOMEM;

	err = __netpoll_setup(np, p->dev, gfp);
	if (err) {
		kfree(np);
		goto out;
		return err;
	}

	p->np = np;

out:
	return err;
}

+2 −1
Original line number Diff line number Diff line
@@ -363,7 +363,8 @@ int br_add_if(struct net_bridge *br, struct net_device *dev)
	if (err)
		goto err2;

	if (br_netpoll_info(br) && ((err = br_netpoll_enable(p, GFP_KERNEL))))
	err = br_netpoll_enable(p, GFP_KERNEL);
	if (err)
		goto err3;

	err = netdev_master_upper_dev_link(dev, br->dev);
+0 −10
Original line number Diff line number Diff line
@@ -333,11 +333,6 @@ extern void br_dev_delete(struct net_device *dev, struct list_head *list);
extern netdev_tx_t br_dev_xmit(struct sk_buff *skb,
			       struct net_device *dev);
#ifdef CONFIG_NET_POLL_CONTROLLER
static inline struct netpoll_info *br_netpoll_info(struct net_bridge *br)
{
	return br->dev->npinfo;
}

static inline void br_netpoll_send_skb(const struct net_bridge_port *p,
				       struct sk_buff *skb)
{
@@ -350,11 +345,6 @@ static inline void br_netpoll_send_skb(const struct net_bridge_port *p,
extern int br_netpoll_enable(struct net_bridge_port *p, gfp_t gfp);
extern void br_netpoll_disable(struct net_bridge_port *p);
#else
static inline struct netpoll_info *br_netpoll_info(struct net_bridge *br)
{
	return NULL;
}

static inline void br_netpoll_send_skb(const struct net_bridge_port *p,
				       struct sk_buff *skb)
{