diff options
author | Arnaldo Carvalho de Melo <[email protected]> | 2022-08-01 08:59:31 -0300 |
---|---|---|
committer | Arnaldo Carvalho de Melo <[email protected]> | 2022-08-01 08:59:31 -0300 |
commit | 18808564aa3bc9ae3309fd8a5c0a93f7f9a23f9a (patch) | |
tree | 4c1732a2dddb246f0d39a492cbf8e6db31f3af3e /net/tls/tls_device.c | |
parent | 9a0b36266f7a83912592052035b84f13b12e30da (diff) | |
parent | 3d7cb6b04c3f3115719235cc6866b10326de34cd (diff) |
Merge remote-tracking branch 'torvalds/master' into perf/core
To pick up the fixes that went upstream via acme/perf/urgent and to get
to v5.19.
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
Diffstat (limited to 'net/tls/tls_device.c')
-rw-r--r-- | net/tls/tls_device.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index 879b9024678e..9975df34d9c2 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c @@ -1376,8 +1376,13 @@ static int tls_device_down(struct net_device *netdev) * by tls_device_free_ctx. rx_conf and tx_conf stay in TLS_HW. * Now release the ref taken above. */ - if (refcount_dec_and_test(&ctx->refcount)) + if (refcount_dec_and_test(&ctx->refcount)) { + /* sk_destruct ran after tls_device_down took a ref, and + * it returned early. Complete the destruction here. + */ + list_del(&ctx->list); tls_device_free_ctx(ctx); + } } up_write(&device_offload_lock); |