]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/decnet/dn_neigh.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux...
[karo-tx-linux.git] / net / decnet / dn_neigh.c
index ac90f658586cbd0af97f823a6cf86075394befcc..3aede1b459fd6bbe4d276606200a1965496de1e1 100644 (file)
@@ -202,7 +202,7 @@ static int dn_neigh_output_packet(struct sk_buff *skb)
 {
        struct dst_entry *dst = skb_dst(skb);
        struct dn_route *rt = (struct dn_route *)dst;
-       struct neighbour *neigh = dst_get_neighbour_noref(dst);
+       struct neighbour *neigh = rt->n;
        struct net_device *dev = neigh->dev;
        char mac_addr[ETH_ALEN];
        unsigned int seq;
@@ -240,7 +240,7 @@ static int dn_long_output(struct neighbour *neigh, struct sk_buff *skb)
                        kfree_skb(skb);
                        return -ENOBUFS;
                }
-               kfree_skb(skb);
+               consume_skb(skb);
                skb = skb2;
                net_info_ratelimited("dn_long_output: Increasing headroom\n");
        }
@@ -283,7 +283,7 @@ static int dn_short_output(struct neighbour *neigh, struct sk_buff *skb)
                        kfree_skb(skb);
                        return -ENOBUFS;
                }
-               kfree_skb(skb);
+               consume_skb(skb);
                skb = skb2;
                net_info_ratelimited("dn_short_output: Increasing headroom\n");
        }
@@ -322,7 +322,7 @@ static int dn_phase3_output(struct neighbour *neigh, struct sk_buff *skb)
                        kfree_skb(skb);
                        return -ENOBUFS;
                }
-               kfree_skb(skb);
+               consume_skb(skb);
                skb = skb2;
                net_info_ratelimited("dn_phase3_output: Increasing headroom\n");
        }