diff --git a/src/box/xlog.cc b/src/box/xlog.cc
index 22097d6865969e2934215bfd8420769dc9ccf28a..2e7873f8ab32a12ed9cab8006def89de8ee4d6b7 100644
--- a/src/box/xlog.cc
+++ b/src/box/xlog.cc
@@ -688,7 +688,7 @@ sync_cb(eio_req *req)
 {
 	int fd = (intptr_t) req->data;
 	if (req->result) {
-		errno = req->result;
+		errno = req->errorno;
 		say_syserror("%s: fsync() failed",
 			     fio_filename(fd));
 		errno = 0;