linux/net/tls
Jakub Kicinski fd31f3996a tls: rx: decrypt into a fresh skb
We currently CoW Rx skbs whenever we can't decrypt to a user
space buffer. The skbs can be enormous (64kB) and CoW does
a linear alloc which has a strong chance of failing under
memory pressure. Or even without, skb_cow_data() assumes
GFP_ATOMIC.

Allocate a new frag'd skb and decrypt into it. We finally
take advantage of the decrypted skb getting returned via
darg.

Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-07-18 11:24:11 +01:00
..
Kconfig net/tls: Select SOCK_RX_QUEUE_MAPPING from TLS_DEVICE 2021-02-11 19:08:06 -08:00
Makefile tls: rx: async: hold onto the input skb 2022-07-18 11:24:11 +01:00
tls_device_fallback.c tls: create an internal header 2022-07-08 18:38:45 -07:00
tls_device.c tls: rx: read the input skb from ctx->recv_pkt 2022-07-18 11:24:11 +01:00
tls_main.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2022-07-14 15:27:35 -07:00
tls_proc.c tls: rx: add counter for NoPad violations 2022-07-11 19:48:33 -07:00
tls_strp.c tls: rx: async: hold onto the input skb 2022-07-18 11:24:11 +01:00
tls_sw.c tls: rx: decrypt into a fresh skb 2022-07-18 11:24:11 +01:00
tls_toe.c tls: create an internal header 2022-07-08 18:38:45 -07:00
tls.h tls: rx: decrypt into a fresh skb 2022-07-18 11:24:11 +01:00
trace.c net/tls: add tracing for device/offload events 2019-10-05 16:29:00 -07:00
trace.h net/tls: add device decrypted trace point 2019-10-05 16:29:00 -07:00