tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 17ba51a30a87b554093781a3becc6e39e9573684
parent bb15dc1ebd520cb902124c982abbba135af183b5
Author: Nick Mathewson <nickm@torproject.org>
Date:   Wed, 20 Jun 2018 14:15:00 -0400

Use raw_assert in mutex functions to avoid circularity in logs.

Diffstat:
Msrc/common/compat_pthreads.c | 22++++++++--------------
Msrc/common/compat_winthreads.c | 3+--
2 files changed, 9 insertions(+), 16 deletions(-)

diff --git a/src/common/compat_pthreads.c b/src/common/compat_pthreads.c @@ -106,8 +106,7 @@ tor_mutex_init(tor_mutex_t *mutex) const int err = pthread_mutex_init(&mutex->mutex, &attr_recursive); if (PREDICT_UNLIKELY(err)) { // LCOV_EXCL_START - log_err(LD_GENERAL, "Error %d creating a mutex.", err); - tor_assert_unreached(); + raw_assert_unreached_msg("Error creating a mutex."); // LCOV_EXCL_STOP } } @@ -123,8 +122,7 @@ tor_mutex_init_nonrecursive(tor_mutex_t *mutex) err = pthread_mutex_init(&mutex->mutex, NULL); if (PREDICT_UNLIKELY(err)) { // LCOV_EXCL_START - log_err(LD_GENERAL, "Error %d creating a mutex.", err); - tor_assert_unreached(); + raw_assert_unreached_msg("Error creating a mutex."); // LCOV_EXCL_STOP } } @@ -134,12 +132,11 @@ void tor_mutex_acquire(tor_mutex_t *m) { int err; - tor_assert(m); + raw_assert(m); err = pthread_mutex_lock(&m->mutex); if (PREDICT_UNLIKELY(err)) { // LCOV_EXCL_START - log_err(LD_GENERAL, "Error %d locking a mutex.", err); - tor_assert_unreached(); + raw_assert_unreached_msg("Error locking a mutex."); // LCOV_EXCL_STOP } } @@ -148,12 +145,11 @@ void tor_mutex_release(tor_mutex_t *m) { int err; - tor_assert(m); + raw_assert(m); err = pthread_mutex_unlock(&m->mutex); if (PREDICT_UNLIKELY(err)) { // LCOV_EXCL_START - log_err(LD_GENERAL, "Error %d unlocking a mutex.", err); - tor_assert_unreached(); + raw_assert_unreached_msg("Error unlocking a mutex."); // LCOV_EXCL_STOP } } @@ -164,12 +160,11 @@ void tor_mutex_uninit(tor_mutex_t *m) { int err; - tor_assert(m); + raw_assert(m); err = pthread_mutex_destroy(&m->mutex); if (PREDICT_UNLIKELY(err)) { // LCOV_EXCL_START - log_err(LD_GENERAL, "Error %d destroying a mutex.", err); - tor_assert_unreached(); + raw_assert_unreached_msg("Error destroying a mutex."); // LCOV_EXCL_STOP } } @@ -347,4 +342,3 @@ tor_threads_init(void) set_main_thread(); } } - diff --git a/src/common/compat_winthreads.c b/src/common/compat_winthreads.c @@ -74,7 +74,7 @@ tor_mutex_uninit(tor_mutex_t *m) void tor_mutex_acquire(tor_mutex_t *m) { - tor_assert(m); + raw_assert(m); EnterCriticalSection(&m->mutex); } void @@ -248,4 +248,3 @@ tor_threads_init(void) } #endif /* defined(_WIN32) */ -