Skip to content

Make the pthread_rwlock implementation header-only macros [3/3]

Ondřej Surý requested to merge ondrej-rework-pthread-rwlock-3 into main

Instead of checking the PTHREAD_RUNTIME_CHECK from the header, move it to the pthread_rwlock implementation functions. The internal isc_rwlock actually cannot fail, so the checks in the header was useless anyway.

While using mutrace, the phtread-rwlock based isc_rwlock implementation would be all tracked in the rwlock.c unit losing all useful information as all rwlocks would be traced in a single place. Rewrite the pthread_rwlock based implementation to be header-only macros, so we can use mutrace to properly track the rwlock contention without heavily patching mutrace to understand the libisc synchronization primitives.

Edited by Ondřej Surý

Merge request reports