summaryrefslogtreecommitdiffstats
path: root/net/sched/act_mirred.c
diff options
context:
space:
mode:
authorWANG Cong <xiyou.wangcong@gmail.com>2015-10-06 17:23:47 -0700
committerDavid S. Miller <davem@davemloft.net>2015-10-08 04:59:04 -0700
commitd40496a56430eac0d330378816954619899fe303 (patch)
tree51672731493579de68284e7af4cf2bf758cd20a7 /net/sched/act_mirred.c
parentc72eda0608a30ca6aa8722d4afdbd2557b3c9345 (diff)
downloadlinux-stable-d40496a56430eac0d330378816954619899fe303.tar.gz
linux-stable-d40496a56430eac0d330378816954619899fe303.tar.bz2
linux-stable-d40496a56430eac0d330378816954619899fe303.zip
act_mirred: clear sender cpu before sending to tx
Similar to commit c29390c6dfee ("xps: must clear sender_cpu before forwarding") the skb->sender_cpu needs to be cleared when moving from Rx Tx, otherwise kernel could crash. Fixes: 2bd82484bb4c ("xps: fix xps for stacked devices") Cc: Eric Dumazet <edumazet@google.com> Cc: Jamal Hadi Salim <jhs@mojatatu.com> Signed-off-by: Cong Wang <cwang@twopensource.com> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com> Acked-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/act_mirred.c')
-rw-r--r--net/sched/act_mirred.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sched/act_mirred.c b/net/sched/act_mirred.c
index 2efaf4ee6040..32fcdecdb9e2 100644
--- a/net/sched/act_mirred.c
+++ b/net/sched/act_mirred.c
@@ -179,6 +179,7 @@ static int tcf_mirred(struct sk_buff *skb, const struct tc_action *a,
skb2->skb_iif = skb->dev->ifindex;
skb2->dev = dev;
+ skb_sender_cpu_clear(skb2);
err = dev_queue_xmit(skb2);
if (err) {