diff options
author | Simon Rettberg | 2019-08-07 14:39:44 +0200 |
---|---|---|
committer | Simon Rettberg | 2019-08-07 14:39:44 +0200 |
commit | 4e2e258dba3c9268e8d4fd061cbb9f291017ed2f (patch) | |
tree | 4f5e07a350a47802ef012bd0ef6af32a7e700c96 /src/server/net.c | |
parent | [SERVER] Fix race condition and invalid lock order (diff) | |
download | dnbd3-4e2e258dba3c9268e8d4fd061cbb9f291017ed2f.tar.gz dnbd3-4e2e258dba3c9268e8d4fd061cbb9f291017ed2f.tar.xz dnbd3-4e2e258dba3c9268e8d4fd061cbb9f291017ed2f.zip |
[SERVER] Use more _Atomic
Diffstat (limited to 'src/server/net.c')
-rw-r--r-- | src/server/net.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/server/net.c b/src/server/net.c index c1fa6fa..92728c0 100644 --- a/src/server/net.c +++ b/src/server/net.c @@ -255,9 +255,8 @@ void* net_handleNewConnection(void *clientPtr) // No BGR mismatch, but don't lookup if image is unknown locally image = image_get( image_name, rid, true ); } - mutex_lock( &client->lock ); client->image = image; - mutex_unlock( &client->lock ); + atomic_thread_fence( memory_order_release ); if ( image == NULL ) { //logadd( LOG_DEBUG1, "Client requested non-existent image '%s' (rid:%d), rejected\n", image_name, (int)rid ); } else if ( !image->working ) { |