From: Daniel Borkmann Date: Wed, 23 Sep 2015 20:20:15 +0000 (+0200) Subject: sched, bpf: let stack handle !IFF_UP devs on bpf_clone_redirect X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=927ab1d764565aec36ace1d017fa14c1e84f2769;p=GitHub%2Fmoto-9609%2Fandroid_kernel_motorola_exynos9610.git sched, bpf: let stack handle !IFF_UP devs on bpf_clone_redirect Similarly as already the case in bpf_redirect()/skb_do_redirect() pair, let the stack deal with devs that are !IFF_UP. dev_forward_skb() as well as dev_queue_xmit() will free the skb and increment drop counter internally in such cases, so we can spare the condition in bpf_clone_redirect(). Signed-off-by: Daniel Borkmann Acked-by: Alexei Starovoitov Signed-off-by: David S. Miller --- diff --git a/net/core/filter.c b/net/core/filter.c index da3f3d94d6e9..96bd962c292d 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -1404,9 +1404,6 @@ static u64 bpf_clone_redirect(u64 r1, u64 ifindex, u64 flags, u64 r4, u64 r5) if (unlikely(!dev)) return -EINVAL; - if (unlikely(!(dev->flags & IFF_UP))) - return -EINVAL; - skb2 = skb_clone(skb, GFP_ATOMIC); if (unlikely(!skb2)) return -ENOMEM;