[Gluster-devel] Glusterfs crash when enable quota on Arm aarch 64platform.

Xie Changlong zgrep at 139.com
Fri Nov 29 09:56:51 UTC 2019


Hi, PSC

We encounter the same issue a few month ago, and git bisect says the 
first bad commit is 2fb445ba. This patch is not quota related, but it 
addressed the quota issue!

Maybe it's gcc issue??

commit 2fb445babdd621b71676e40804fe98e95fc9084d
Author: Xavi Hernandez <xhernandez at redhat.com>
Date:   Thu Jan 31 08:13:58 2019 +0100

     syncop: remove unnecessary call to gf_backtrace_save()

     A call to gf_backtrace_save() was done on each context switch of a
     synctask. The backtrace is generated writing to the filesystem, so it
     can have an important impact on latency.

     The generated backtrace was not used anywhere, so it's been removed.

     Change-Id: I399a93b932c5b6e981c696c72c3e1ef44710ba52
     Updates: bz#1193929
     Signed-off-by: Xavi Hernandez <xhernandez at redhat.com>

diff --git a/libglusterfs/src/glusterfs/syncop.h 
b/libglusterfs/src/glusterfs/syncop.h
index 7a6167b..e0f1017 100644
--- a/libglusterfs/src/glusterfs/syncop.h
+++ b/libglusterfs/src/glusterfs/syncop.h
@@ -73,7 +73,6 @@ struct synctask {
      int done;

      struct list_head waitq; /* can wait only "once" at a time */
-    char btbuf[GF_BACKTRACE_LEN];
  };

  struct syncproc {
diff --git a/libglusterfs/src/syncop.c b/libglusterfs/src/syncop.c
index bf70daf..6206d4c 100644
--- a/libglusterfs/src/syncop.c
+++ b/libglusterfs/src/syncop.c
@@ -327,7 +327,6 @@ synctask_yield(struct synctask *task)

      if (task->state != SYNCTASK_DONE) {
          task->state = SYNCTASK_SUSPEND;
-        (void)gf_backtrace_save(task->btbuf);
      }
      if (swapcontext(&task->ctx, &task->proc->sched) < 0) {
          gf_msg("syncop", GF_LOG_ERROR, errno, LG_MSG_SWAPCONTEXT_FAILED,


在 2019/11/29 16:12, PSC 写道:
> Hi, I am studying on port glusterfs to ARM platform. I compiled and 
> ran it. Most of its functions works fine, however, when I enable quota 
> on any kind of volume, and mount it, and try to read or write anything 
> to the volume. It will run into crash, and tell me the "Transport 
> endpoint is not connected".
>
> The version of glusterfs I am using is GlusterFS 3.12.2.
> And I test it from version 3.12.2 to 6.0. This problem was solved on 
> 6.0, but I didn't found any addressed Bugs relate to quota.
> I also do some test on x86 servers, quota works fine.
>
> On both of x86 and ARM servers, I am using CentOS 7.6.
>
> For stability reason, I had been told that I should use GlusterFS 
> 3.12.2, rather than new versions. So I need to find out how to address 
> this bug.
>
> Please offer me some help. Thank you very much!!
>
>
> _______________________________________________
>
> Community Meeting Calendar:
>
> APAC Schedule -
> Every 2nd and 4th Tuesday at 11:30 AM IST
> Bridge: https://bluejeans.com/441850968
>
>
> NA/EMEA Schedule -
> Every 1st and 3rd Tuesday at 01:00 PM EDT
> Bridge: https://bluejeans.com/441850968
>
> Gluster-devel mailing list
> Gluster-devel at gluster.org
> https://lists.gluster.org/mailman/listinfo/gluster-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gluster.org/pipermail/gluster-devel/attachments/20191129/74f5e66f/attachment.html>


More information about the Gluster-devel mailing list