diff options
author | sr | 2013-07-17 12:10:01 +0200 |
---|---|---|
committer | sr | 2013-07-17 12:10:01 +0200 |
commit | 3fd89450610679c6b777767632d2af5751773295 (patch) | |
tree | fdf63e0555bba9601f012ad5ce3eff631941bc4f /src/server/net.c | |
parent | Add debug-lock functions that will helpt to spot deadlocks etc. while developing (diff) | |
download | dnbd3-3fd89450610679c6b777767632d2af5751773295.tar.gz dnbd3-3fd89450610679c6b777767632d2af5751773295.tar.xz dnbd3-3fd89450610679c6b777767632d2af5751773295.zip |
Replace all pthread_spin_* calls with spin_*, so that all locking can be tracked and debugged
Fix compilation of kernel module
Diffstat (limited to 'src/server/net.c')
-rw-r--r-- | src/server/net.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/server/net.c b/src/server/net.c index 214f1cd..4efdc00 100644 --- a/src/server/net.c +++ b/src/server/net.c @@ -36,6 +36,7 @@ #include "memlog.h" #include "../serialize.h" #include "../config.h" +#include "locks.h" static inline char recv_request_header(int sock, dnbd3_request_t *request) { @@ -347,12 +348,12 @@ void *net_client_handler(void *dnbd3_client) // Check for messages that have been queued from another thread while ( client->sendqueue != NULL ) { dnbd3_binstring_t *message = NULL; - pthread_spin_lock( &client->lock ); + spin_lock( &client->lock ); if ( client->sendqueue != NULL ) { message = client->sendqueue->data; client->sendqueue = g_slist_remove( client->sendqueue, message ); } - pthread_spin_unlock( &client->lock ); + spin_unlock( &client->lock ); send_data( client->sock, message->data, message->len ); free( message ); } |