[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240319084235.GA12080@unreal>
Date: Tue, 19 Mar 2024 10:42:35 +0200
From: Leon Romanovsky <leon@...nel.org>
To: Feng Wang <wangfe@...gle.com>
Cc: netdev@...r.kernel.org, steffen.klassert@...unet.com,
herbert@...dor.apana.org.au, davem@...emloft.net
Subject: Re: [PATCH] [PATCH ipsec] xfrm: Store ipsec interface index
On Mon, Mar 18, 2024 at 04:13:28PM -0700, Feng Wang wrote:
> From: wangfe <wangfe@...gle.com>
>
> When there are multiple ipsec sessions, packet offload driver
> can use the index to distinguish the packets from the different
> sessions even though xfrm_selector are same.
Do we have such "packet offload driver" in the kernel tree?
Thanks
> Thus each packet is handled corresponding to its session parameter.
>
> Signed-off-by: wangfe <wangfe@...gle.com>
> ---
> net/xfrm/xfrm_interface_core.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/net/xfrm/xfrm_interface_core.c b/net/xfrm/xfrm_interface_core.c
> index 21d50d75c260..996571af53e5 100644
> --- a/net/xfrm/xfrm_interface_core.c
> +++ b/net/xfrm/xfrm_interface_core.c
> @@ -506,7 +506,9 @@ xfrmi_xmit2(struct sk_buff *skb, struct net_device *dev, struct flowi *fl)
> xfrmi_scrub_packet(skb, !net_eq(xi->net, dev_net(dev)));
> skb_dst_set(skb, dst);
> skb->dev = tdev;
> -
> +#ifdef CONFIG_XFRM_OFFLOAD
> + skb->skb_iif = if_id;
> +#endif
> err = dst_output(xi->net, skb->sk, skb);
> if (net_xmit_eval(err) == 0) {
> dev_sw_netstats_tx_add(dev, 1, length);
> --
> 2.44.0.291.gc1ea87d7ee-goog
>
>
Powered by blists - more mailing lists