Message ID | 462402a097260357a7aba80228612305f230b6a9.1729530028.git.gnault@redhat.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 6ab04392dd087d896910dc618b4a14e54c58a499 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | ipv4: Prepare core ipv4 files to future .flowi4_tos conversion. | expand |
On Tue, Oct 22, 2024 at 11:48:15AM +0200, Guillaume Nault wrote: > 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 <gnault@redhat.com> Reviewed-by: Ido Schimmel <idosch@nvidia.com>
diff --git a/net/ipv4/ipmr.c b/net/ipv4/ipmr.c index b4fc443481ce..99e7cd0531d9 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) ?
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 <gnault@redhat.com> --- net/ipv4/ipmr.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)