Message ID | e81448c34721aaf49faa904a5ffc2a18b598b3d0.1723366546.git.leon@kernel.org (mailing list archive) |
---|---|
State | Awaiting Upstream |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [xfrm-next] xfrm: Remove documentation WARN_ON to limit return values for offloaded SA | expand |
On Sun, Aug 11, 2024 at 11:56:42AM +0300, Leon Romanovsky wrote: > From: Patrisious Haddad <phaddad@nvidia.com> > > The original idea to put WARN_ON() on return value from driver code was > to make sure that packet offload doesn't have silent fallback to > SW implementation, like crypto offload has. > > In reality, this is not needed as all *swan implementations followed > this request and used explicit configuration style to make sure that > "users will get what they ask". > So instead of forcing drivers to make sure that even their internal flows > don't return -EOPNOTSUPP, let's remove this WARN_ON. > > Signed-off-by: Patrisious Haddad <phaddad@nvidia.com> > Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Applied, thanks a lot!
diff --git a/net/xfrm/xfrm_device.c b/net/xfrm/xfrm_device.c index 9a44d363ba62..f123b7c9ec82 100644 --- a/net/xfrm/xfrm_device.c +++ b/net/xfrm/xfrm_device.c @@ -328,12 +328,8 @@ int xfrm_dev_state_add(struct net *net, struct xfrm_state *x, /* User explicitly requested packet offload mode and configured * policy in addition to the XFRM state. So be civil to users, * and return an error instead of taking fallback path. - * - * This WARN_ON() can be seen as a documentation for driver - * authors to do not return -EOPNOTSUPP in packet offload mode. */ - WARN_ON(err == -EOPNOTSUPP && is_packet_offload); - if (err != -EOPNOTSUPP || is_packet_offload) { + if ((err != -EOPNOTSUPP && !is_packet_offload) || is_packet_offload) { NL_SET_ERR_MSG_WEAK(extack, "Device failed to offload this state"); return err; }