[tor-commits] [tor/maint-0.4.1] log: explain why it is safe to leave the log mutex initialized

nickm at torproject.org nickm at torproject.org
Tue Oct 22 16:14:20 UTC 2019


commit 749c2e1761c753992fb2549e7ee912e568f563d6
Author: teor <teor at torproject.org>
Date:   Thu Sep 26 12:18:23 2019 +1000

    log: explain why it is safe to leave the log mutex initialized
    
    The log mutex is dynamically initialized, guarded by log_mutex_initialized.
    We don't want to destroy it, because after it is destroyed, we won't see
    any more logs.
    
    If tor is re-initialized, log_mutex_initialized will still be 1. So we
    won't trigger any undefined behaviour by trying to re-initialize the
    log mutex.
    
    Part of 31736, but committed in this branch to avoid merge conflicts.
---
 src/lib/log/log.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/lib/log/log.c b/src/lib/log/log.c
index a9ad38fb2..eacd413a5 100644
--- a/src/lib/log/log.c
+++ b/src/lib/log/log.c
@@ -804,7 +804,10 @@ logs_free_all(void)
   }
 
   /* We _could_ destroy the log mutex here, but that would screw up any logs
-   * that happened between here and the end of execution. */
+   * that happened between here and the end of execution.
+   * If tor is re-initialized, log_mutex_initialized will still be 1. So we
+   * won't trigger any undefined behaviour by trying to re-initialize the
+   * log mutex. */
 }
 
 /** Remove and free the log entry <b>victim</b> from the linked-list





More information about the tor-commits mailing list