From: Leon Romanovsky Date: Thu, 30 Mar 2023 08:02:26 +0000 (+0300) Subject: xfrm: don't require advance ESN callback for packet offload X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=3e1c957f9a3b248f47f8b39b607002d948fd17d4;p=users%2Fjedix%2Flinux-maple.git xfrm: don't require advance ESN callback for packet offload In packet offload mode, the hardware is responsible to manage replay window and advance ESN. In that mode, there won't any call to .xdo_dev_state_advance_esn callback. So relax current check for existence of that callback. Link: https://lore.kernel.org/r/9f3dfc3fef2cfcd191f0c5eee7cf0aa74e7f7786.1680162300.git.leonro@nvidia.com Reviewed-by: Raed Salem Acked-by: Steffen Klassert Signed-off-by: Leon Romanovsky --- diff --git a/net/xfrm/xfrm_device.c b/net/xfrm/xfrm_device.c index 95f1436bf6a2..bef28c6187eb 100644 --- a/net/xfrm/xfrm_device.c +++ b/net/xfrm/xfrm_device.c @@ -287,7 +287,7 @@ int xfrm_dev_state_add(struct net *net, struct xfrm_state *x, return (is_packet_offload) ? -EINVAL : 0; } - if (x->props.flags & XFRM_STATE_ESN && + if (!is_packet_offload && x->props.flags & XFRM_STATE_ESN && !dev->xfrmdev_ops->xdo_dev_state_advance_esn) { NL_SET_ERR_MSG(extack, "Device doesn't support offload with ESN"); xso->dev = NULL;