aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2007-11-01 05:26:54 -0400
committerSteven Whitehouse <swhiteho@redhat.com>2008-01-25 03:07:37 -0500
commitc2932e03dbcfe7ea9052953dbd5f3157183c1e9b (patch)
tree4d72603f5fc136a0ad0fd65b423045d5d30e69ef
parent60b0d0877986b8fa70148f06055422d2ed858e88 (diff)
[GFS2] Remove "reclaim limit"
This call to reclaim glocks is not needed, and in particular we don't want it in the fast path for locking glocks. The limit was entirely arbitrary anyway and we can't expect users to adjust things like this, the remaining code will do the right thing on its own. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
-rw-r--r--fs/gfs2/glock.c9
-rw-r--r--fs/gfs2/incore.h1
-rw-r--r--fs/gfs2/super.c1
-rw-r--r--fs/gfs2/sys.c2
4 files changed, 0 insertions, 13 deletions
diff --git a/fs/gfs2/glock.c b/fs/gfs2/glock.c
index 104e83ff874f..159a5479c4e4 100644
--- a/fs/gfs2/glock.c
+++ b/fs/gfs2/glock.c
@@ -507,21 +507,12 @@ static int rq_mutex(struct gfs2_holder *gh)
507static int rq_promote(struct gfs2_holder *gh) 507static int rq_promote(struct gfs2_holder *gh)
508{ 508{
509 struct gfs2_glock *gl = gh->gh_gl; 509 struct gfs2_glock *gl = gh->gh_gl;
510 struct gfs2_sbd *sdp = gl->gl_sbd;
511 510
512 if (!relaxed_state_ok(gl->gl_state, gh->gh_state, gh->gh_flags)) { 511 if (!relaxed_state_ok(gl->gl_state, gh->gh_state, gh->gh_flags)) {
513 if (list_empty(&gl->gl_holders)) { 512 if (list_empty(&gl->gl_holders)) {
514 gl->gl_req_gh = gh; 513 gl->gl_req_gh = gh;
515 set_bit(GLF_LOCK, &gl->gl_flags); 514 set_bit(GLF_LOCK, &gl->gl_flags);
516 spin_unlock(&gl->gl_spin); 515 spin_unlock(&gl->gl_spin);
517
518 if (atomic_read(&sdp->sd_reclaim_count) >
519 gfs2_tune_get(sdp, gt_reclaim_limit) &&
520 !(gh->gh_flags & LM_FLAG_PRIORITY)) {
521 gfs2_reclaim_glock(sdp);
522 gfs2_reclaim_glock(sdp);
523 }
524
525 gfs2_glock_xmote_th(gh->gh_gl, gh); 516 gfs2_glock_xmote_th(gh->gh_gl, gh);
526 spin_lock(&gl->gl_spin); 517 spin_lock(&gl->gl_spin);
527 } 518 }
diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index f7a50fed4b52..089dba412cc0 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -433,7 +433,6 @@ struct gfs2_tune {
433 unsigned int gt_max_readahead; /* Max bytes to read-ahead from disk */ 433 unsigned int gt_max_readahead; /* Max bytes to read-ahead from disk */
434 unsigned int gt_stall_secs; /* Detects trouble! */ 434 unsigned int gt_stall_secs; /* Detects trouble! */
435 unsigned int gt_complain_secs; 435 unsigned int gt_complain_secs;
436 unsigned int gt_reclaim_limit; /* Max num of glocks in reclaim list */
437 unsigned int gt_statfs_quantum; 436 unsigned int gt_statfs_quantum;
438 unsigned int gt_statfs_slow; 437 unsigned int gt_statfs_slow;
439}; 438};
diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c
index 26edb7f9f4b8..548cc8ba0703 100644
--- a/fs/gfs2/super.c
+++ b/fs/gfs2/super.c
@@ -70,7 +70,6 @@ void gfs2_tune_init(struct gfs2_tune *gt)
70 gt->gt_max_readahead = 1 << 18; 70 gt->gt_max_readahead = 1 << 18;
71 gt->gt_stall_secs = 600; 71 gt->gt_stall_secs = 600;
72 gt->gt_complain_secs = 10; 72 gt->gt_complain_secs = 10;
73 gt->gt_reclaim_limit = 5000;
74 gt->gt_statfs_quantum = 30; 73 gt->gt_statfs_quantum = 30;
75 gt->gt_statfs_slow = 0; 74 gt->gt_statfs_slow = 0;
76} 75}
diff --git a/fs/gfs2/sys.c b/fs/gfs2/sys.c
index 06e0b7768d97..1359198aed63 100644
--- a/fs/gfs2/sys.c
+++ b/fs/gfs2/sys.c
@@ -433,7 +433,6 @@ TUNE_ATTR(quota_quantum, 0);
433TUNE_ATTR(atime_quantum, 0); 433TUNE_ATTR(atime_quantum, 0);
434TUNE_ATTR(max_readahead, 0); 434TUNE_ATTR(max_readahead, 0);
435TUNE_ATTR(complain_secs, 0); 435TUNE_ATTR(complain_secs, 0);
436TUNE_ATTR(reclaim_limit, 0);
437TUNE_ATTR(statfs_slow, 0); 436TUNE_ATTR(statfs_slow, 0);
438TUNE_ATTR(new_files_jdata, 0); 437TUNE_ATTR(new_files_jdata, 0);
439TUNE_ATTR(new_files_directio, 0); 438TUNE_ATTR(new_files_directio, 0);
@@ -456,7 +455,6 @@ static struct attribute *tune_attrs[] = {
456 &tune_attr_atime_quantum.attr, 455 &tune_attr_atime_quantum.attr,
457 &tune_attr_max_readahead.attr, 456 &tune_attr_max_readahead.attr,
458 &tune_attr_complain_secs.attr, 457 &tune_attr_complain_secs.attr,
459 &tune_attr_reclaim_limit.attr,
460 &tune_attr_statfs_slow.attr, 458 &tune_attr_statfs_slow.attr,
461 &tune_attr_quota_simul_sync.attr, 459 &tune_attr_quota_simul_sync.attr,
462 &tune_attr_quota_cache_secs.attr, 460 &tune_attr_quota_cache_secs.attr,