From: Guillaume Nault Date: Tue, 22 Oct 2024 09:48:23 +0000 (+0200) Subject: ipv4: Prepare ip_rt_get_source() to future .flowi4_tos conversion. X-Git-Tag: microblaze-v6.16~599^2~214^2 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=85ef52e8693c4d3d23f33dc8007ebf11d5d4d4ce;p=linux-2.6-microblaze.git ipv4: Prepare ip_rt_get_source() 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/0a13a200f31809841975e38633914af1061e0c04.1729530028.git.gnault@redhat.com Signed-off-by: Jakub Kicinski --- diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 18a08b4f4a5a..763398e08b7d 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1263,7 +1263,7 @@ void ip_rt_get_source(u8 *addr, struct sk_buff *skb, struct rtable *rt) 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->dst.dev->ifindex, .flowi4_iif = skb->dev->ifindex, .flowi4_mark = skb->mark,