diff options
author | Zdenek Kabelac <zkabelac@redhat.com> | 2012-02-28 11:03:24 +0000 |
---|---|---|
committer | Zdenek Kabelac <zkabelac@redhat.com> | 2012-02-28 11:03:24 +0000 |
commit | c19d86338d6a88a3e91b42a8acca2ee9ff5a1543 (patch) | |
tree | c99d1cb6443576a9a4cd43ffe7da9260a2f5a44a /daemons | |
parent | e5d399f66716d2ba2f2b360d694db869a7c38906 (diff) | |
download | lvm2-c19d86338d6a88a3e91b42a8acca2ee9ff5a1543.tar.gz lvm2-c19d86338d6a88a3e91b42a8acca2ee9ff5a1543.tar.xz lvm2-c19d86338d6a88a3e91b42a8acca2ee9ff5a1543.zip |
Better detection of missing dmeventd fifo connection
Diffstat (limited to 'daemons')
-rw-r--r-- | daemons/dmeventd/libdevmapper-event.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/daemons/dmeventd/libdevmapper-event.c b/daemons/dmeventd/libdevmapper-event.c index 39324b1f..4237efb8 100644 --- a/daemons/dmeventd/libdevmapper-event.c +++ b/daemons/dmeventd/libdevmapper-event.c @@ -232,7 +232,6 @@ static int _daemon_read(struct dm_event_fifos *fifos, size_t size = 2 * sizeof(uint32_t); /* status + size */ uint32_t *header = alloca(size); char *buf = (char *)header; - struct stat fstatbuf; while (bytes < size) { for (i = 0, ret = 0; (i < 20) && (ret < 1); i++) { @@ -246,11 +245,8 @@ static int _daemon_read(struct dm_event_fifos *fifos, log_error("Unable to read from event server"); return 0; } - /* Check whether fifo is still alive */ - if ((ret == 0) && - fstat(fifos->server + 1, &fstatbuf) && - (errno == EBADF)) { - log_error("Fifo fd is bad for event server."); + if ((ret == 0) && i && !bytes) { + log_error("No input from event server."); return 0; } } |