Commit 7bcc460a62 for openssl.org

commit 7bcc460a62bd0ebc11f1614b3b70ba9886747962
Author: Andrew Dinh <andrewd@openssl.org>
Date:   Tue Jul 28 14:11:58 2026 +0700

    Remove unneeded lock

    The current lockless design does not need this lock around objs anymore

    Assisted-by: Claude:claude-sonnet-5

    Reviewed-by: Saša NedvÄ›dický <sashan@openssl.org>
    Reviewed-by: Bob Beck <beck@openssl.org>
    MergeDate: Thu Jul 30 06:12:46 2026
    (Merged from https://github.com/openssl/openssl/pull/32003)

diff --git a/test/radix/quic_bindings.c b/test/radix/quic_bindings.c
index fb87c2245d..de066deb46 100644
--- a/test/radix/quic_bindings.c
+++ b/test/radix/quic_bindings.c
@@ -66,7 +66,7 @@ typedef struct radix_process_st {

     /* Process-global state. */
     CRYPTO_MUTEX *gm; /* global mutex */
-    LHASH_OF(RADIX_OBJ) *objs; /* protected by gm */
+    LHASH_OF(RADIX_OBJ) *objs;
     BIO *keylog_out; /* protected by gm */
     uint64_t counter[2]; /* protected by gm */

@@ -892,8 +892,6 @@ DEF_FUNC(hf_clear)
     RADIX_THREAD *rt = RT();
     size_t i;

-    ossl_crypto_mutex_lock(RP()->gm);
-
     lh_RADIX_OBJ_doall(RP()->objs, cleanup_one);
     lh_RADIX_OBJ_flush(RP()->objs);

@@ -902,7 +900,6 @@ DEF_FUNC(hf_clear)
         rt->ssl[i] = NULL;
     }

-    ossl_crypto_mutex_unlock(RP()->gm);
     return 1;
 }