summaryrefslogtreecommitdiffstats
path: root/src/server/locks.c
diff options
context:
space:
mode:
authorSimon Rettberg2016-02-05 15:05:30 +0100
committerSimon Rettberg2016-02-05 15:05:30 +0100
commit627645acc074eab7a3694a267bc2a643d8b3e57a (patch)
tree5f61225803c369ab1295ce0ee36a33ae6cb51eb8 /src/server/locks.c
parent[SERVER] BREAKING: Get rid of pseudo case-insensitivity (diff)
downloaddnbd3-627645acc074eab7a3694a267bc2a643d8b3e57a.tar.gz
dnbd3-627645acc074eab7a3694a267bc2a643d8b3e57a.tar.xz
dnbd3-627645acc074eab7a3694a267bc2a643d8b3e57a.zip
First steps in make signals more abstract from the underlying mechanism; replace epoll with poll.
We now don't assume that a signal equals a single fd (eventfd on Linux). The next step would be to create a version of signal.c that uses a pipe internally, so it can be used on other platforms, like *BSD. This is also the reason epoll was replaced with poll in uplink.c
Diffstat (limited to 'src/server/locks.c')
-rw-r--r--src/server/locks.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/server/locks.c b/src/server/locks.c
index bc8b18e..294f862 100644
--- a/src/server/locks.c
+++ b/src/server/locks.c
@@ -50,7 +50,7 @@ static int init_done = 0;
static pthread_spinlock_t initdestory;
static int lockId = 0;
static pthread_t watchdog = 0;
-static int watchdogSignal = -1;
+static dnbd3_signal_t* watchdogSignal = NULL;
static void *debug_thread_watchdog(void *something);
@@ -278,7 +278,7 @@ static void *debug_thread_watchdog(void *something UNUSED)
}
pthread_spin_unlock( &initdestory );
}
- if ( watchdogSignal == -1 || signal_wait( watchdogSignal, 5000 ) == SIGNAL_ERROR ) sleep( 5 );
+ if ( watchdogSignal == NULL || signal_wait( watchdogSignal, 5000 ) == SIGNAL_ERROR ) sleep( 5 );
}
return NULL ;
}