From: Guillaume Nault Date: Tue, 22 Oct 2024 09:48:15 +0000 (+0200) Subject: ipv4: Prepare ipmr_rt_fib_lookup() to future .flowi4_tos conversion. X-Git-Tag: v6.13-rc1~135^2~214^2~1 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6ab04392dd087d896910dc618b4a14e54c58a499;p=thirdparty%2Fkernel%2Flinux.git ipv4: Prepare ipmr_rt_fib_lookup() to future .flowi4_tos conversion. Use ip4h_dscp() to get the DSCP from the IPv4 header, then convert the dscp_t value to __u8 with inet_dscp_to_dsfield(). Then, when we'll convert .flowi4_tos to dscp_t, we'll just have to drop the inet_dscp_to_dsfield() call. Signed-off-by: Guillaume Nault Reviewed-by: Ido Schimmel Link: https://patch.msgid.link/462402a097260357a7aba80228612305f230b6a9.1729530028.git.gnault@redhat.com Signed-off-by: Jakub Kicinski --- diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c index b4fc443481ce0..99e7cd0531d91 100644 --- a/net/ipv4/ipmr.c +++ b/net/ipv4/ipmr.c @@ -2081,7 +2081,7 @@ static struct mr_table *ipmr_rt_fib_lookup(struct net *net, struct sk_buff *skb) struct flowi4 fl4 = { .daddr = iph->daddr, .saddr = iph->saddr, - .flowi4_tos = iph->tos & INET_DSCP_MASK, + .flowi4_tos = inet_dscp_to_dsfield(ip4h_dscp(iph)), .flowi4_oif = (rt_is_output_route(rt) ? skb->dev->ifindex : 0), .flowi4_iif = (rt_is_output_route(rt) ?