ret = poll(sd->pfds, td->nr_files, -1);
if (ret < 0) {
- td_verror(td, errno);
if (!r)
- r = -1;
+ r = -errno;
+ td_verror(td, errno);
break;
} else if (!ret)
continue;
if (ret < 0) {
if (errno == EAGAIN)
continue;
+ r = -errno;
td_verror(td, errno);
- r = -1;
break;
} else if (ret) {
p += ret;
ret = ioctl(f->fd, SG_IO, hdr);
if (ret < 0)
- return ret;
+ return -errno;
return FIO_Q_COMPLETED;
}
if (sync) {
ret = read(f->fd, hdr, sizeof(*hdr));
if (ret < 0)
- return errno;
+ return -errno;
return FIO_Q_COMPLETED;
}