summaryrefslogtreecommitdiffstats
path: root/src/fuse/main.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/fuse/main.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/fuse/main.c')
-rw-r--r--src/fuse/main.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/fuse/main.c b/src/fuse/main.c
index 22c400e..cf35596 100644
--- a/src/fuse/main.c
+++ b/src/fuse/main.c
@@ -136,13 +136,13 @@ static int image_read(const char *path, char *buf, size_t size, off_t offset, st
request.buffer = buf;
request.length = (uint32_t)size;
request.offset = offset;
- request.signalFd = signal_newBlocking();
+ request.signal = signal_newBlocking();
if ( !connection_read( &request ) ) {
return -EINVAL;
}
while ( !request.finished ) {
- int ret = signal_wait( request.signalFd, 5000 );
+ int ret = signal_wait( request.signal, 5000 );
if ( !keepRunning ) {
connection_close();
break;
@@ -151,7 +151,7 @@ static int image_read(const char *path, char *buf, size_t size, off_t offset, st
debugf( "fuse_read signal wait returned %d", ret );
}
}
- signal_close( request.signalFd );
+ signal_close( request.signal );
if ( request.success ) {
return request.length;
} else {