diff options
| author | 2022-07-14 22:22:35 -0700 | |
|---|---|---|
| committer | 2022-07-18 11:24:11 +0100 | |
| commit | fd31f3996af2627106e22a9f8072764fede51161 (patch) | |
| tree | 9f364a6ce7ecb7b5b94daba90002b6cfee8dc4c8 /include/linux/perf/git:/ssh:/git@git.zx2c4.com | |
| parent | tls: rx: async: don't put async zc on the list (diff) | |
| download | linux-dev-fd31f3996af2627106e22a9f8072764fede51161.tar.xz linux-dev-fd31f3996af2627106e22a9f8072764fede51161.zip | |
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>
Diffstat (limited to 'include/linux/perf/git:/ssh:/git@git.zx2c4.com')
0 files changed, 0 insertions, 0 deletions
