All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH net-next] xfrm: Indicate xfrm_state offload errors
@ 2017-04-30 13:51 ilant
  2017-05-01 19:00 ` David Miller
  0 siblings, 1 reply; 2+ messages in thread
From: ilant @ 2017-04-30 13:51 UTC (permalink / raw)
  To: Steffen Klassert; +Cc: netdev, Ilan Tayari

From: Ilan Tayari <ilant@mellanox.com>

Current code silently ignores driver errors when configuring
IPSec offload xfrm_state, and falls back to host-based crypto.

Fail the xfrm_state creation if the driver has an error, because
the NIC offloading was explicitly requested by the user program.

This will communicate back to the user that there was an error.

Fixes: d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API")
Signed-off-by: Ilan Tayari <ilant@mellanox.com>
---
 net/xfrm/xfrm_user.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/net/xfrm/xfrm_user.c b/net/xfrm/xfrm_user.c
index ba74e5eeeeef..c4cceddac9db 100644
--- a/net/xfrm/xfrm_user.c
+++ b/net/xfrm/xfrm_user.c
@@ -595,9 +595,12 @@ static struct xfrm_state *xfrm_state_construct(struct net *net,
 			goto error;
 	}
 
-	if (attrs[XFRMA_OFFLOAD_DEV] &&
-	    xfrm_dev_state_add(net, x, nla_data(attrs[XFRMA_OFFLOAD_DEV])))
-		goto error;
+	if (attrs[XFRMA_OFFLOAD_DEV]) {
+		err = xfrm_dev_state_add(net, x,
+					 nla_data(attrs[XFRMA_OFFLOAD_DEV]));
+		if (err)
+			goto error;
+	}
 
 	if ((err = xfrm_alloc_replay_state_esn(&x->replay_esn, &x->preplay_esn,
 					       attrs[XFRMA_REPLAY_ESN_VAL])))
-- 
2.11.0

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH net-next] xfrm: Indicate xfrm_state offload errors
  2017-04-30 13:51 [PATCH net-next] xfrm: Indicate xfrm_state offload errors ilant
@ 2017-05-01 19:00 ` David Miller
  0 siblings, 0 replies; 2+ messages in thread
From: David Miller @ 2017-05-01 19:00 UTC (permalink / raw)
  To: ilant; +Cc: steffen.klassert, netdev

From: <ilant@mellanox.com>
Date: Sun, 30 Apr 2017 16:51:19 +0300

> From: Ilan Tayari <ilant@mellanox.com>
> 
> Current code silently ignores driver errors when configuring
> IPSec offload xfrm_state, and falls back to host-based crypto.
> 
> Fail the xfrm_state creation if the driver has an error, because
> the NIC offloading was explicitly requested by the user program.
> 
> This will communicate back to the user that there was an error.
> 
> Fixes: d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API")
> Signed-off-by: Ilan Tayari <ilant@mellanox.com>

Also applied.

Steffen, I apologize for taking these directly but I really wanted to
make sure these fixes made it into the pull request I plan to send to
Linus for the merge window soon.

Thanks.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-05-01 19:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-04-30 13:51 [PATCH net-next] xfrm: Indicate xfrm_state offload errors ilant
2017-05-01 19:00 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.