diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index 9f3bdbc1e59348cf049c0cca9959ee5f413e41cb..1b5f55cac613d1416a64bbc900418c8cc1a9267a 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c @@ -904,7 +904,9 @@ int tls_set_device_offload_rx(struct sock *sk, struct tls_context *ctx) goto release_netdev; free_sw_resources: + up_read(&device_offload_lock); tls_sw_free_resources_rx(sk); + down_read(&device_offload_lock); release_ctx: ctx->priv_ctx_rx = NULL; release_netdev: