Under high recovery loads dlm_sendd can monopolise the CPU and cause soft
lockups.
This one extra and one moved cond_resched() make it yield a little more during
such times keeping work moving.
Signed-Off-By: Patrick Caulfield [EMAIL PROTECTED]
Patrick
diff -wup
Hi,
On Thu, 2007-09-13 at 17:52 -0400, Wendy Cheng wrote:
Move inode deletion code out of blocking_cb handle_callback route to
avoid racy conditions that end up blocking lock_dlm1 thread. Fix
bugzilla 286821.
-- Wendy
Now in the -nmw git tree. Thanks,
Steve.
Hi,
Now in the -nmw git tree. Thanks,
Steve.
On Thu, 2007-09-13 at 23:35 -0500, Abhijith Das wrote:
This patch adds a new flag to the gfs2_holder structure GL_FLOCK.
It is set on holders of glocks representing flocks. This flag is
checked in add_to_queue() and a process is permitted to
Hi,
On Fri, 2007-09-14 at 08:49 +0100, Patrick Caulfield wrote:
Under high recovery loads dlm_sendd can monopolise the CPU and cause soft
lockups.
This one extra and one moved cond_resched() make it yield a little more during
such times keeping work moving.
Signed-Off-By: Patrick
Hi,
Now in the -nmw git tree. Thanks,
Steve.
On Thu, 2007-09-13 at 23:04 -0500, Bob Peterson wrote:
Josef's right--my bad. Here is the corrected patch for 276631.
The problem boiled down to a race between the gdlm_init_threads()
function initializing thread1 and its setting of blist = 1.
On Thu, Sep 13, 2007 at 11:04:43PM -0500, Bob Peterson wrote:
diff -pur a/fs/gfs2/locking/dlm/thread.c b/fs/gfs2/locking/dlm/thread.c
--- a/fs/gfs2/locking/dlm/thread.c2007-09-13 17:33:58.0 -0500
+++ b/fs/gfs2/locking/dlm/thread.c2007-09-13 22:47:14.0 -0500
@@ -279,8
CVSROOT:/cvs/cluster
Module name:cluster
Changes by: [EMAIL PROTECTED] 2007-09-14 14:32:04
Modified files:
. : configure
Log message:
go back to default of -02 now that -Werror problems are fixed
Patches:
This is a rewrite of the patch. We decided it was a better
approach to call separate wrapper functions than trying to work around
the problem with a spin_lock.
--
The problem boiled down to a race between the gdlm_init_threads()
function initializing thread1 and its setting of blist = 1.