diff options
author | Jakub Kicinski <jakub.kicinski@netronome.com> | 2019-09-03 00:31:03 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-09-05 03:49:49 -0400 |
commit | 90962b4894f560432e5538e9a354ee708f8beb3d (patch) | |
tree | a1027a48789a0a18fa7144663cfed687e2707274 | |
parent | be7bbea114d6ab2688b9e59cd24a306d21e51c27 (diff) |
net/tls: don't jump to return
Reusing parts of error path for normal exit will make
next commit harder to read, untangle the two.
Signed-off-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Reviewed-by: John Hurley <john.hurley@netronome.com>
Reviewed-by: Dirk van der Merwe <dirk.vandermerwe@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/tls/tls_device.c | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index e188139f0464..2cd7318a1338 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c | |||
@@ -838,22 +838,18 @@ int tls_set_device_offload(struct sock *sk, struct tls_context *ctx) | |||
838 | struct net_device *netdev; | 838 | struct net_device *netdev; |
839 | char *iv, *rec_seq; | 839 | char *iv, *rec_seq; |
840 | struct sk_buff *skb; | 840 | struct sk_buff *skb; |
841 | int rc = -EINVAL; | ||
842 | __be64 rcd_sn; | 841 | __be64 rcd_sn; |
842 | int rc; | ||
843 | 843 | ||
844 | if (!ctx) | 844 | if (!ctx) |
845 | goto out; | 845 | return -EINVAL; |
846 | 846 | ||
847 | if (ctx->priv_ctx_tx) { | 847 | if (ctx->priv_ctx_tx) |
848 | rc = -EEXIST; | 848 | return -EEXIST; |
849 | goto out; | ||
850 | } | ||
851 | 849 | ||
852 | start_marker_record = kmalloc(sizeof(*start_marker_record), GFP_KERNEL); | 850 | start_marker_record = kmalloc(sizeof(*start_marker_record), GFP_KERNEL); |
853 | if (!start_marker_record) { | 851 | if (!start_marker_record) |
854 | rc = -ENOMEM; | 852 | return -ENOMEM; |
855 | goto out; | ||
856 | } | ||
857 | 853 | ||
858 | offload_ctx = kzalloc(TLS_OFFLOAD_CONTEXT_SIZE_TX, GFP_KERNEL); | 854 | offload_ctx = kzalloc(TLS_OFFLOAD_CONTEXT_SIZE_TX, GFP_KERNEL); |
859 | if (!offload_ctx) { | 855 | if (!offload_ctx) { |
@@ -982,7 +978,8 @@ int tls_set_device_offload(struct sock *sk, struct tls_context *ctx) | |||
982 | smp_store_release(&sk->sk_validate_xmit_skb, tls_validate_xmit_skb); | 978 | smp_store_release(&sk->sk_validate_xmit_skb, tls_validate_xmit_skb); |
983 | dev_put(netdev); | 979 | dev_put(netdev); |
984 | up_read(&device_offload_lock); | 980 | up_read(&device_offload_lock); |
985 | goto out; | 981 | |
982 | return 0; | ||
986 | 983 | ||
987 | release_netdev: | 984 | release_netdev: |
988 | dev_put(netdev); | 985 | dev_put(netdev); |
@@ -999,7 +996,6 @@ free_offload_ctx: | |||
999 | ctx->priv_ctx_tx = NULL; | 996 | ctx->priv_ctx_tx = NULL; |
1000 | free_marker_record: | 997 | free_marker_record: |
1001 | kfree(start_marker_record); | 998 | kfree(start_marker_record); |
1002 | out: | ||
1003 | return rc; | 999 | return rc; |
1004 | } | 1000 | } |
1005 | 1001 | ||
@@ -1058,7 +1054,11 @@ int tls_set_device_offload_rx(struct sock *sk, struct tls_context *ctx) | |||
1058 | goto free_sw_resources; | 1054 | goto free_sw_resources; |
1059 | 1055 | ||
1060 | tls_device_attach(ctx, sk, netdev); | 1056 | tls_device_attach(ctx, sk, netdev); |
1061 | goto release_netdev; | 1057 | up_read(&device_offload_lock); |
1058 | |||
1059 | dev_put(netdev); | ||
1060 | |||
1061 | return 0; | ||
1062 | 1062 | ||
1063 | free_sw_resources: | 1063 | free_sw_resources: |
1064 | up_read(&device_offload_lock); | 1064 | up_read(&device_offload_lock); |