Re: [PATCH net-next] net: ipip: use tunnel parameters for fill_forward_path route lookup
Lorenzo Bianconi <[email protected]>
| Newsgroups | gmane.linux.network,gmane.comp.security.firewalls.netfilter.devel |
|---|---|
| Message-ID | <ak5vJVq-WDD_rGPT@lore-desk> |
On Jul 08, David Ahern wrote: > On 7/8/26 5:25 AM, Lorenzo Bianconi wrote: > > Pass source address, DSCP and output interface from the tunnel > > configuration to ip_route_output() in ipip_fill_forward_path(), aligning > > the route lookup with the slow path in ipip_tunnel_xmit(). > > > > Signed-off-by: Lorenzo Bianconi <[email protected]> > > --- > > net/ipv4/ipip.c | 5 +++-- > > 1 file changed, 3 insertions(+), 2 deletions(-) > > > > diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c > > index b643194f57d2..d1aa048a6099 100644 > > --- a/net/ipv4/ipip.c > > +++ b/net/ipv4/ipip.c > > @@ -360,8 +360,9 @@ static int ipip_fill_forward_path(struct net_device_path_ctx *ctx, > > const struct iphdr *tiph = &tunnel->parms.iph; > > struct rtable *rt; > > > > - rt = ip_route_output(dev_net(ctx->dev), tiph->daddr, 0, 0, 0, > > - RT_SCOPE_UNIVERSE); > > + rt = ip_route_output(dev_net(ctx->dev), tiph->daddr, tiph->saddr, > > + inet_dsfield_to_dscp(tiph->tos), > > + tunnel->parms.link, RT_SCOPE_UNIVERSE); > > if (IS_ERR(rt)) > > return PTR_ERR(rt); > > > > > > --- > > base-commit: 155c68aef2397f8c5d72ef10acf48ae159bf1869 > > change-id: 20260708-ipip-route-lookup-fill_forward_path-6a8a1f45084c > > > > Best regards, > > This and the ipv6 version seem correct to me. Please add test cases for > both. I guess we already have selftests for them in: https://github.com/torvalds/linux/blob/master/tools/testing/selftests/net/netfilter/nft_flowtable.sh#L584 Regards, Lorenzo
signature.asc
(application/pgp-signature, 228 B)
-----BEGIN PGP SIGNATURE----- iHUEABYKAB0WIQTquNwa3Txd3rGGn7Y6cBh0uS2trAUCak5vJQAKCRA6cBh0uS2t rK1QAQCqA1g9GXfic0L+jsNjYqA1stEPAY82SAaW5CzXDSrkQQEAgNNxio32btHE bWmQpuijB1G5Lc+2XLQGYVG6uSa92wc= =jggN -----END PGP SIGNATURE-----