Add a little extra diagnostic to nno-blocking write
This commit is contained in:
@@ -524,13 +524,15 @@ ssize_t non_blocking_write(int fd, const void *buf, size_t count) {
|
||||
ufds[0].events = POLLOUT;
|
||||
rc = poll(ufds, 1, config.metadata_pipe_timeout);
|
||||
if (rc < 0) {
|
||||
debug(1, "error waiting for pipe to become ready for writing...");
|
||||
debug(1, "non-blocking write error waiting for pipe to become ready for writing...");
|
||||
} else if (rc == 0) {
|
||||
warn("timeout waiting for pipe to become ready for writing");
|
||||
warn("non-blocking write timeout waiting for pipe to become ready for writing");
|
||||
rc = -2;
|
||||
} else { //rc > 0, implying it might be ready
|
||||
size_t bytes_written = write(fd,ibuf,bytes_remaining);
|
||||
if (bytes_written==-1) {
|
||||
if (errno==EINTR)
|
||||
debug(1,"non-blocking write interrupted by a signal interrupt");
|
||||
if (!((errno == EAGAIN) || (errno == EWOULDBLOCK)))
|
||||
rc = -1;
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user