ipv4: Only compute net once in ip_finish_output2
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
9479b0af48
commit
4ba1bf4292
|
@ -177,14 +177,15 @@ static int ip_finish_output2(struct sock *sk, struct sk_buff *skb)
|
||||||
struct dst_entry *dst = skb_dst(skb);
|
struct dst_entry *dst = skb_dst(skb);
|
||||||
struct rtable *rt = (struct rtable *)dst;
|
struct rtable *rt = (struct rtable *)dst;
|
||||||
struct net_device *dev = dst->dev;
|
struct net_device *dev = dst->dev;
|
||||||
|
struct net *net = dev_net(dev);
|
||||||
unsigned int hh_len = LL_RESERVED_SPACE(dev);
|
unsigned int hh_len = LL_RESERVED_SPACE(dev);
|
||||||
struct neighbour *neigh;
|
struct neighbour *neigh;
|
||||||
u32 nexthop;
|
u32 nexthop;
|
||||||
|
|
||||||
if (rt->rt_type == RTN_MULTICAST) {
|
if (rt->rt_type == RTN_MULTICAST) {
|
||||||
IP_UPD_PO_STATS(dev_net(dev), IPSTATS_MIB_OUTMCAST, skb->len);
|
IP_UPD_PO_STATS(net, IPSTATS_MIB_OUTMCAST, skb->len);
|
||||||
} else if (rt->rt_type == RTN_BROADCAST)
|
} else if (rt->rt_type == RTN_BROADCAST)
|
||||||
IP_UPD_PO_STATS(dev_net(dev), IPSTATS_MIB_OUTBCAST, skb->len);
|
IP_UPD_PO_STATS(net, IPSTATS_MIB_OUTBCAST, skb->len);
|
||||||
|
|
||||||
/* Be paranoid, rather than too clever. */
|
/* Be paranoid, rather than too clever. */
|
||||||
if (unlikely(skb_headroom(skb) < hh_len && dev->header_ops)) {
|
if (unlikely(skb_headroom(skb) < hh_len && dev->header_ops)) {
|
||||||
|
|
Loading…
Reference in New Issue