From: Abhijith Das <adas@redhat.com> Date: Thu, 28 Aug 2008 10:18:23 -0500 Subject: [gfs2] multiple writer performance issue Message-id: 48B6C1BF.3010603@redhat.com O-Subject: [RHEL 5.3] GFS2: Multiple writer performance issue (bz #459738) Bugzilla: 459738 RH-Acked-by: Bob Peterson <rpeterso@redhat.com> RH-Acked-by: Steven Whitehouse <swhiteho@redhat.com> This patch fixes the poor performance seen with gfs2 when multiple writers (nodes) write to the filesystem. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com> Signed-off-by: Abhijith Das <adas@redhat.com> diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c index 730f97a..4cafe8d 100644 --- a/fs/gfs2/glock.c +++ b/fs/gfs2/glock.c @@ -1278,6 +1278,8 @@ static void blocking_cb(struct gfs2_sbd *sdp, struct lm_lockname *name, holdtime = gl->gl_tchange + gl->gl_ops->go_min_hold_time; if (time_before(now, holdtime)) delay = holdtime - now; + if (test_bit(GLF_REPLY_PENDING, &gl->gl_flags)) + delay = gl->gl_ops->go_min_hold_time; spin_lock(&gl->gl_spin); handle_callback(gl, state, 1, delay);