aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv6/ip6_output.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/ipv6/ip6_output.c')
-rw-r--r--net/ipv6/ip6_output.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/net/ipv6/ip6_output.c b/net/ipv6/ip6_output.c
index 36362e9513f0..eb50bb07ab2e 100644
--- a/net/ipv6/ip6_output.c
+++ b/net/ipv6/ip6_output.c
@@ -136,13 +136,9 @@ static int ip6_finish_output2(struct sk_buff *skb)
136 } 136 }
137 137
138 neigh = dst->neighbour; 138 neigh = dst->neighbour;
139 if (neigh) { 139 if (neigh)
140 struct hh_cache *hh = &neigh->hh; 140 return neigh_output(neigh, skb);
141 if (hh->hh_len) 141
142 return neigh_hh_output(hh, skb);
143 else
144 return neigh->output(skb);
145 }
146 IP6_INC_STATS_BH(dev_net(dst->dev), 142 IP6_INC_STATS_BH(dev_net(dst->dev),
147 ip6_dst_idev(dst), IPSTATS_MIB_OUTNOROUTES); 143 ip6_dst_idev(dst), IPSTATS_MIB_OUTNOROUTES);
148 kfree_skb(skb); 144 kfree_skb(skb);