tls: rx: don't issue wake ups when data is decrypted
authorJakub Kicinski <kuba@kernel.org>
Fri, 8 Apr 2022 03:38:21 +0000 (20:38 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 8 Apr 2022 10:49:08 +0000 (11:49 +0100)
We inform the applications that data is available when
the record is received. Decryption happens inline inside
recvmsg or splice call. Generating another wakeup inside
the decryption handler seems pointless as someone must
be actively reading the socket if we are executing this
code.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tls/tls_sw.c

index 73ff3fa..4f2e8b4 100644 (file)
@@ -1561,7 +1561,6 @@ static int decrypt_skb_update(struct sock *sk, struct sk_buff *skb,
                              bool async)
 {
        struct tls_context *tls_ctx = tls_get_ctx(sk);
-       struct tls_sw_context_rx *ctx = tls_sw_ctx_rx(tls_ctx);
        struct tls_prot_info *prot = &tls_ctx->prot_info;
        struct strp_msg *rxm = strp_msg(skb);
        struct tls_msg *tlm = tls_msg(skb);
@@ -1600,7 +1599,6 @@ static int decrypt_skb_update(struct sock *sk, struct sk_buff *skb,
                rxm->full_len -= prot->overhead_size;
                tls_advance_record_sn(sk, prot, &tls_ctx->rx);
                tlm->decrypted = 1;
-               ctx->saved_data_ready(sk);
        } else {
                *zc = false;
        }