]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
bpf: Unmask upper DSCP bits in __bpf_redirect_neigh_v4()
authorIdo Schimmel <idosch@nvidia.com>
Thu, 29 Aug 2024 06:54:59 +0000 (09:54 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 31 Aug 2024 16:44:51 +0000 (17:44 +0100)
Unmask the upper DSCP bits when calling ip_route_output_flow() so that
in the future it could perform the FIB lookup according to the full DSCP
value.

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Guillaume Nault <gnault@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/core/filter.c

index f09d875cc05318d06bfb11f5bb7c62dcdc4fbb97..8569cd2482eebf205eeecec11a4eea8f6ad389d1 100644 (file)
@@ -2372,7 +2372,7 @@ static int __bpf_redirect_neigh_v4(struct sk_buff *skb, struct net_device *dev,
                struct flowi4 fl4 = {
                        .flowi4_flags = FLOWI_FLAG_ANYSRC,
                        .flowi4_mark  = skb->mark,
-                       .flowi4_tos   = RT_TOS(ip4h->tos),
+                       .flowi4_tos   = ip4h->tos & INET_DSCP_MASK,
                        .flowi4_oif   = dev->ifindex,
                        .flowi4_proto = ip4h->protocol,
                        .daddr        = ip4h->daddr,