diff options
author | Simon Rettberg | 2018-04-16 11:09:15 +0200 |
---|---|---|
committer | Simon Rettberg | 2018-04-16 11:09:15 +0200 |
commit | ba4dcd90fb14e72d9e672f62228c03ddd3a9dc3a (patch) | |
tree | 16cd3d5d8aa449f0bc01b291c5500a708240305e | |
parent | [SERVER] Add bgrMinClients: Thresold to control when BGR starts (diff) | |
download | dnbd3-ba4dcd90fb14e72d9e672f62228c03ddd3a9dc3a.tar.gz dnbd3-ba4dcd90fb14e72d9e672f62228c03ddd3a9dc3a.tar.xz dnbd3-ba4dcd90fb14e72d9e672f62228c03ddd3a9dc3a.zip |
[SERVER] Acquire write lock before initializing array
-rw-r--r-- | src/server/altservers.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/altservers.c b/src/server/altservers.c index 27fb27e..4a2b8d5 100644 --- a/src/server/altservers.c +++ b/src/server/altservers.c @@ -36,10 +36,14 @@ void altservers_init() logadd( LOG_ERROR, "Could not start altservers connector thread" ); exit( EXIT_FAILURE ); } - // Init waiting links queue + // Init waiting links queue -- this is currently a global static array so + // it will already be zero, but in case we refactor later do it explicitly + // while also holding the write lock so thread sanitizer is happy + spin_lock( &pendingLockWrite ); for (int i = 0; i < SERVER_MAX_PENDING_ALT_CHECKS; ++i) { pending[i] = NULL; } + spin_unlock( &pendingLockWrite ); initDone = true; } |