Hang seen in xfstests 234

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Alex,

I ran the xfstests 234 with procs set to 20 and I can consistently make
it hang.

Looks like, the log buffer is full and all the processes are sleeping at
xlog_wait() or blocked on a mutex which was held by a process that is
sleeping on xlog_wait().

wake up happens when sync is invoked and all processes run free to
completion.

In order to verify the hypothesis, I added the following code
-------------------------
diff --git a/fs/xfs/xfs_qm_syscalls.c b/fs/xfs/xfs_qm_syscalls.c
index 5cc3dde..b2c0d49 100644
--- a/fs/xfs/xfs_qm_syscalls.c
+++ b/fs/xfs/xfs_qm_syscalls.c
@@ -621,6 +621,7 @@ xfs_qm_scall_setqlim(
        dqp->dq_flags |= XFS_DQ_DIRTY;
        xfs_trans_log_dquot(tp, dqp);
 
+       xfs_trans_set_sync(tp);
        error = xfs_trans_commit(tp, 0);
        xfs_qm_dqrele(dqp);
 
--------------------------

and it seems to work well.

Not sure if this can be a fix or the nudge has to happen somewhere else.

Please comment.

Regards,

Chandra

_______________________________________________
xfs mailing list
xfs@xxxxxxxxxxx
http://oss.sgi.com/mailman/listinfo/xfs


[Index of Archives]     [Linux XFS Devel]     [Linux Filesystem Development]     [Filesystem Testing]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux