openssl/include/crypto
Hugo Landau c0b7dac66e EVP_MD performance fix (refcount cache contention)
Partial fix for #17064. Avoid excessive writes to the cache line
containing the refcount for an EVP_MD object to avoid extreme
cache contention when using a single EVP_MD at high frequency on
multiple threads. This changes performance in 3.0 from being double
that of 1.1 to only slightly higher than that of 1.1.

Reviewed-by: Tim Hudson <tjh@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17857)
2022-03-13 11:43:26 +11:00
..
__DECC_INCLUDE_EPILOGUE.H
__DECC_INCLUDE_PROLOGUE.H
aes_platform.h Fixed counter overflow 2022-02-07 11:29:18 +11:00
aria.h
asn1_dsa.h
asn1.h Add tests for do_updatedb 2022-02-14 10:18:46 +01:00
asn1err.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
async.h
asyncerr.h Update copyright year 2021-06-17 13:24:59 +01:00
bioerr.h Update copyright year 2021-06-17 13:24:59 +01:00
bn_conf.h.in
bn_dh.h
bn_srp.h
bn.h
bnerr.h Update copyright year 2021-06-17 13:24:59 +01:00
buffererr.h Update copyright year 2021-06-17 13:24:59 +01:00
chacha.h
cmll_platform.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
cmperr.h Update copyright year 2021-06-17 13:24:59 +01:00
cmserr.h Update copyright year 2021-06-17 13:24:59 +01:00
comperr.h Update copyright year 2021-06-17 13:24:59 +01:00
conferr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
crmferr.h Update copyright year 2021-06-17 13:24:59 +01:00
cryptlib.h
cryptoerr.h err: add additional errors 2022-01-12 20:10:21 +11:00
cterr.h Update copyright year 2021-06-17 13:24:59 +01:00
ctype.h
decoder.h Refactor OSSL_DECODER_do_all_provided() to behave like OSSL_DECODER_fetch() 2021-06-15 16:21:31 +02:00
decodererr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
des_platform.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
dh.h Fix EVP todata and fromdata when used with selection of EVP_PKEY_PUBLIC_KEY. 2022-02-03 13:48:42 +01:00
dherr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
dsa.h Fix EVP todata and fromdata when used with selection of EVP_PKEY_PUBLIC_KEY. 2022-02-03 13:48:42 +01:00
dsaerr.h Update copyright year 2021-06-17 13:24:59 +01:00
dso_conf.h.in
ec.h fips module header inclusion fine-tunning 2021-07-06 10:52:27 +10:00
ecerr.h rand: use size_t for size argument to RAND_bytes_ex() 2021-06-01 18:13:36 +10:00
ecx.h fips module header inclusion fine-tunning 2021-07-06 10:52:27 +10:00
encoder.h Update copyright year 2021-06-17 13:24:59 +01:00
encodererr.h Update copyright year 2021-06-17 13:24:59 +01:00
engine.h
engineerr.h Update copyright year 2021-06-17 13:24:59 +01:00
err.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
ess.h
esserr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
evp.h EVP_MD performance fix (refcount cache contention) 2022-03-13 11:43:26 +11:00
evperr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
httperr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
lhash.h
md32_common.h Add define guards to avoid multi-inclusion 2022-02-16 16:11:56 +01:00
modes.h AES-GCM enabled with AVX512 vAES and vPCLMULQDQ. 2022-02-10 15:10:12 +01:00
objects.h
objectserr.h Update copyright year 2021-06-17 13:24:59 +01:00
ocsperr.h Update copyright year 2021-06-17 13:24:59 +01:00
pem.h Fix copyrights 2022-02-03 13:56:38 +01:00
pemerr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
pkcs7.h
pkcs7err.h Update copyright year 2021-06-17 13:24:59 +01:00
pkcs12err.h Update copyright year 2021-06-17 13:24:59 +01:00
poly1305.h
ppc_arch.h chacha20 performance optimizations for ppc64le with 8x lanes, 2022-02-22 16:58:55 +11:00
punycode.h punycode: fix indentation 2021-06-19 15:54:06 +10:00
rand_pool.h
rand.h MacOS prior to 10.12 does not support random API correctly 2021-09-14 14:50:39 +02:00
randerr.h Update copyright year 2021-06-17 13:24:59 +01:00
rsa.h Fix EVP todata and fromdata when used with selection of EVP_PKEY_PUBLIC_KEY. 2022-02-03 13:48:42 +01:00
rsaerr.h errors: update error message (to be squashed) 2021-05-27 13:01:50 +10:00
security_bits.h
sha.h
siphash.h
siv.h
sm2.h Correctly calculate the length of SM2 plaintext given the ciphertext 2021-08-24 14:22:07 +01:00
sm2err.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
sm4_platform.h SM4 optimization for ARM by HW instruction 2022-01-18 11:52:14 +01:00
sm4.h
sparc_arch.h Split bignum code out of the sparcv9cap.c 2021-07-15 09:33:04 +02:00
sparse_array.h
store.h Add internal get_number functions to internal headers 2021-06-02 20:45:39 +10:00
storeerr.h err: rename err_load_xxx_strings_int functions 2021-05-26 13:01:47 +10:00
tserr.h Update copyright year 2021-06-17 13:24:59 +01:00
types.h
uierr.h Update copyright year 2021-06-17 13:24:59 +01:00
x509.h cpp: fix included files to avoid failure in no-deprecated builds 2021-08-25 10:47:21 +10:00
x509err.h Update copyright year 2021-06-17 13:24:59 +01:00
x509v3err.h Update copyright year 2021-06-17 13:24:59 +01:00