diff options
| author | Takashi Iwai <tiwai@suse.de> | 2014-04-28 12:00:36 +0200 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2014-04-28 12:00:36 +0200 |
| commit | 474a59610729a178cd3c9a6ab990da770b856c74 (patch) | |
| tree | 4b2967dee40ee4d7269fd0b2c59088b4d9bc1286 /net/decnet/dn_route.c | |
| parent | 8dc9abb93dde94e7f2bc719032fe16f5713df05c (diff) | |
| parent | 98810a6dcf8af768d7b0b71e5075ff9c199f5196 (diff) | |
Merge tag 'asoc-v3.15-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-linus
ASoC: Fixes for v3.15
A smattering of driver-specific fixes here, nothing generic. The Cirrus
CODEC conversions to devm_ are leak fixes - the conversion adds missing
error handling code.
Diffstat (limited to 'net/decnet/dn_route.c')
| -rw-r--r-- | net/decnet/dn_route.c | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/net/decnet/dn_route.c b/net/decnet/dn_route.c index ce0cbbfe0f43..daccc4a36d80 100644 --- a/net/decnet/dn_route.c +++ b/net/decnet/dn_route.c @@ -752,7 +752,7 @@ static int dn_to_neigh_output(struct sk_buff *skb) return n->output(n, skb); } -static int dn_output(struct sk_buff *skb) +static int dn_output(struct sock *sk, struct sk_buff *skb) { struct dst_entry *dst = skb_dst(skb); struct dn_route *rt = (struct dn_route *)dst; @@ -838,6 +838,18 @@ drop: * Used to catch bugs. This should never normally get * called. */ +static int dn_rt_bug_sk(struct sock *sk, struct sk_buff *skb) +{ + struct dn_skb_cb *cb = DN_SKB_CB(skb); + + net_dbg_ratelimited("dn_rt_bug: skb from:%04x to:%04x\n", + le16_to_cpu(cb->src), le16_to_cpu(cb->dst)); + + kfree_skb(skb); + + return NET_RX_DROP; +} + static int dn_rt_bug(struct sk_buff *skb) { struct dn_skb_cb *cb = DN_SKB_CB(skb); @@ -1463,7 +1475,7 @@ make_route: rt->n = neigh; rt->dst.lastuse = jiffies; - rt->dst.output = dn_rt_bug; + rt->dst.output = dn_rt_bug_sk; switch (res.type) { case RTN_UNICAST: rt->dst.input = dn_forward; |
