aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/tools
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2018-06-13 15:38:55 +0200
committerJason A. Donenfeld <Jason@zx2c4.com>2018-06-13 15:53:03 +0200
commit481021497c06de1e403a4cd9b0da359b612ed829 (patch)
tree6dc781519ff7f411101ceb7b1b3b7bfa7630e9bd /src/tools
parenttools: support getentropy(3) (diff)
downloadwireguard-monolithic-historical-481021497c06de1e403a4cd9b0da359b612ed829.tar.xz
wireguard-monolithic-historical-481021497c06de1e403a4cd9b0da359b612ed829.zip
chacha20poly1305: use slow crypto on -rt kernels
In rt kernels, spinlocks call schedule(), which means preemption can't be disabled. The FPU disables preemption. Hence, we can either restructure things to move the calls to kernel_fpu_begin/end to be really close to the actual crypto routines, or we can do the slower lazier solution of just not using the FPU at all on -rt kernels. This patch goes with the latter lazy solution. The reason why we don't place the calls to kernel_fpu_begin/end close to the crypto routines in the first place is that they're very expensive, as it usually involves a call to XSAVE. So on sane kernels, we benefit from only having to call it once.
Diffstat (limited to 'src/tools')
0 files changed, 0 insertions, 0 deletions