Description
We are observing high CPU usage and performance issue with Openssl 3.0.1 on Linux when using Certificate extract API d2i_X509
using default context.
All our server processing threads are having high cpu usage and are spending most of their time in CRYPTO_THREAD_read_lock, CRYPTO_THREAD_unlock and CRYPTO_THREAD_write_lock
similar to the one described in #17064.
Each thread is showing CPU usage as high as 95-99%.
There are several code paths reaching the above crypto lock methods, we could capture stack traces and attached document for reference.
Stack traces for several threads:
[openssl3_0_d2iX509_filtered_stack_traces.txt]
(https://github.com/openssl/openssl/files/8336711/openssl3_0_d2iX509_filtered_stack_traces.txt)
Full stack trace for single thread:
openssl3_0_d2iX509_full_stack_trace.txt
From our application we use d2i_X509 which internally call ASN1_item_d2i_ex() across all threads and in most cases we see OSSL_DECODER_CTX_new_for_pkey() exists in the stack, would this locking issue be resolved through #17116
We would like to know when this issue would be resolved. Let us know if any other information is required.
Metadata
Metadata
Labels
Type
Projects
Status