50dc83
From 243075b593c6fccbffb3e82ffcfdb58acfd68269 Mon Sep 17 00:00:00 2001
50dc83
From: Mohit Agrawal <moagrawal@redhat.com>
50dc83
Date: Thu, 22 Aug 2019 15:51:43 +0530
50dc83
Subject: [PATCH 284/284] posix: log aio_error return codes in
50dc83
 posix_fs_health_check
50dc83
50dc83
Problem: Sometime brick is going down to health check thread is
50dc83
         failed without logging error codes return by aio system calls.
50dc83
         As per aio_error man page it returns a positive error number
50dc83
         if the asynchronous I/O operation failed.
50dc83
50dc83
Solution: log aio_error return codes in error message
50dc83
50dc83
> Change-Id: I2496b1bc16e602b0fd3ad53e211de11ec8c641ef
50dc83
> Fixes: bz#1744519
50dc83
> Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
50dc83
> Reviewed on upstream link https://review.gluster.org/#/c/glusterfs/+/23284/
50dc83
50dc83
Change-Id: I2496b1bc16e602b0fd3ad53e211de11ec8c641ef
50dc83
BUG: 1744518
50dc83
Signed-off-by: Mohit Agrawal <moagrawal@redhat.com>
50dc83
Reviewed-on: https://code.engineering.redhat.com/gerrit/179211
50dc83
Tested-by: RHGS Build Bot <nigelb@redhat.com>
50dc83
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com>
50dc83
---
50dc83
 xlators/storage/posix/src/posix-helpers.c | 5 ++---
50dc83
 1 file changed, 2 insertions(+), 3 deletions(-)
50dc83
50dc83
diff --git a/xlators/storage/posix/src/posix-helpers.c b/xlators/storage/posix/src/posix-helpers.c
50dc83
index ef5bfd5..d143d4c 100644
50dc83
--- a/xlators/storage/posix/src/posix-helpers.c
50dc83
+++ b/xlators/storage/posix/src/posix-helpers.c
50dc83
@@ -2025,7 +2025,6 @@ posix_fs_health_check(xlator_t *this)
50dc83
     if (ret != 0) {
50dc83
         op_errno = errno;
50dc83
         op = "aio_write_error";
50dc83
-        ret = -1;
50dc83
         goto out;
50dc83
     }
50dc83
 
50dc83
@@ -2064,7 +2063,6 @@ posix_fs_health_check(xlator_t *this)
50dc83
     if (ret != 0) {
50dc83
         op_errno = errno;
50dc83
         op = "aio_read_error";
50dc83
-        ret = -1;
50dc83
         goto out;
50dc83
     }
50dc83
 
50dc83
@@ -2089,7 +2087,8 @@ out:
50dc83
     }
50dc83
     if (ret && file_path[0]) {
50dc83
         gf_msg(this->name, GF_LOG_WARNING, errno, P_MSG_HEALTHCHECK_FAILED,
50dc83
-               "%s() on %s returned", op, file_path);
50dc83
+               "%s() on %s returned ret is %d error is %s", op, file_path, ret,
50dc83
+               ret != -1 ? strerror(ret) : strerror(op_errno));
50dc83
         gf_event(EVENT_POSIX_HEALTH_CHECK_FAILED,
50dc83
                  "op=%s;path=%s;error=%s;brick=%s:%s timeout is %d", op,
50dc83
                  file_path, strerror(op_errno), priv->hostname, priv->base_path,
50dc83
-- 
50dc83
1.8.3.1
50dc83