Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 101154
b: refs/heads/master
c: 1bdad60
h: refs/heads/master
v: v3
  • Loading branch information
Steven Whitehouse committed Jun 27, 2008
1 parent 0f5e610 commit db5beb4
Show file tree
Hide file tree
Showing 12 changed files with 7 additions and 74 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 9171f5a991e7613cbee816874ad8c9515dcab50f
refs/heads/master: 1bdad606338debc6384b2844f1b53cc436b3ac90
5 changes: 0 additions & 5 deletions trunk/fs/gfs2/gfs2.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,6 @@ enum {
CREATE = 1,
};

enum {
NO_WAIT = 0,
WAIT = 1,
};

enum {
NO_FORCE = 0,
FORCE = 1,
Expand Down
12 changes: 3 additions & 9 deletions trunk/fs/gfs2/glock.c
Original file line number Diff line number Diff line change
Expand Up @@ -1316,11 +1316,6 @@ void gfs2_glock_cb(void *cb_data, unsigned int type, void *data)
wake_up_process(sdp->sd_recoverd_process);
return;

case LM_CB_DROPLOCKS:
gfs2_gl_hash_clear(sdp, NO_WAIT);
gfs2_quota_scan(sdp);
return;

default:
gfs2_assert_warn(sdp, 0);
return;
Expand Down Expand Up @@ -1508,11 +1503,10 @@ static void clear_glock(struct gfs2_glock *gl)
* @sdp: the filesystem
* @wait: wait until it's all gone
*
* Called when unmounting the filesystem, or when inter-node lock manager
* requests DROPLOCKS because it is running out of capacity.
* Called when unmounting the filesystem.
*/

void gfs2_gl_hash_clear(struct gfs2_sbd *sdp, int wait)
void gfs2_gl_hash_clear(struct gfs2_sbd *sdp)
{
unsigned long t;
unsigned int x;
Expand All @@ -1527,7 +1521,7 @@ void gfs2_gl_hash_clear(struct gfs2_sbd *sdp, int wait)
cont = 1;
}

if (!wait || !cont)
if (!cont)
break;

if (time_after_eq(jiffies,
Expand Down
2 changes: 1 addition & 1 deletion trunk/fs/gfs2/glock.h
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ void gfs2_lvb_unhold(struct gfs2_glock *gl);
void gfs2_glock_cb(void *cb_data, unsigned int type, void *data);
void gfs2_glock_schedule_for_reclaim(struct gfs2_glock *gl);
void gfs2_reclaim_glock(struct gfs2_sbd *sdp);
void gfs2_gl_hash_clear(struct gfs2_sbd *sdp, int wait);
void gfs2_gl_hash_clear(struct gfs2_sbd *sdp);

int __init gfs2_glock_init(void);
void gfs2_glock_exit(void);
Expand Down
3 changes: 0 additions & 3 deletions trunk/fs/gfs2/locking/dlm/lock_dlm.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,9 +79,6 @@ struct gdlm_ls {
wait_queue_head_t wait_control;
struct task_struct *thread;
wait_queue_head_t thread_wait;
unsigned long drop_time;
int drop_locks_count;
int drop_locks_period;
};

enum {
Expand Down
3 changes: 0 additions & 3 deletions trunk/fs/gfs2/locking/dlm/mount.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,6 @@ static struct gdlm_ls *init_gdlm(lm_callback_t cb, struct gfs2_sbd *sdp,
if (!ls)
return NULL;

ls->drop_locks_count = GDLM_DROP_COUNT;
ls->drop_locks_period = GDLM_DROP_PERIOD;
ls->fscb = cb;
ls->sdp = sdp;
ls->fsflags = flags;
Expand All @@ -33,7 +31,6 @@ static struct gdlm_ls *init_gdlm(lm_callback_t cb, struct gfs2_sbd *sdp,
INIT_LIST_HEAD(&ls->all_locks);
init_waitqueue_head(&ls->thread_wait);
init_waitqueue_head(&ls->wait_control);
ls->drop_time = jiffies;
ls->jid = -1;

strncpy(buf, table_name, 256);
Expand Down
13 changes: 0 additions & 13 deletions trunk/fs/gfs2/locking/dlm/sysfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -114,17 +114,6 @@ static ssize_t recover_status_show(struct gdlm_ls *ls, char *buf)
return sprintf(buf, "%d\n", ls->recover_jid_status);
}

static ssize_t drop_count_show(struct gdlm_ls *ls, char *buf)
{
return sprintf(buf, "%d\n", ls->drop_locks_count);
}

static ssize_t drop_count_store(struct gdlm_ls *ls, const char *buf, size_t len)
{
ls->drop_locks_count = simple_strtol(buf, NULL, 0);
return len;
}

struct gdlm_attr {
struct attribute attr;
ssize_t (*show)(struct gdlm_ls *, char *);
Expand All @@ -144,7 +133,6 @@ GDLM_ATTR(first_done, 0444, first_done_show, NULL);
GDLM_ATTR(recover, 0644, recover_show, recover_store);
GDLM_ATTR(recover_done, 0444, recover_done_show, NULL);
GDLM_ATTR(recover_status, 0444, recover_status_show, NULL);
GDLM_ATTR(drop_count, 0644, drop_count_show, drop_count_store);

static struct attribute *gdlm_attrs[] = {
&gdlm_attr_proto_name.attr,
Expand All @@ -157,7 +145,6 @@ static struct attribute *gdlm_attrs[] = {
&gdlm_attr_recover.attr,
&gdlm_attr_recover_done.attr,
&gdlm_attr_recover_status.attr,
&gdlm_attr_drop_count.attr,
NULL,
};

Expand Down
19 changes: 0 additions & 19 deletions trunk/fs/gfs2/locking/dlm/thread.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,19 +20,6 @@ static inline int no_work(struct gdlm_ls *ls)
return ret;
}

static inline int check_drop(struct gdlm_ls *ls)
{
if (!ls->drop_locks_count)
return 0;

if (time_after(jiffies, ls->drop_time + ls->drop_locks_period * HZ)) {
ls->drop_time = jiffies;
if (ls->all_locks_count >= ls->drop_locks_count)
return 1;
}
return 0;
}

static int gdlm_thread(void *data)
{
struct gdlm_ls *ls = (struct gdlm_ls *) data;
Expand All @@ -52,12 +39,6 @@ static int gdlm_thread(void *data)
gdlm_do_lock(lp);
spin_lock(&ls->async_lock);
}
/* Does this ever happen these days? I hope not anyway */
if (check_drop(ls)) {
spin_unlock(&ls->async_lock);
ls->fscb(ls->sdp, LM_CB_DROPLOCKS, NULL);
spin_lock(&ls->async_lock);
}
spin_unlock(&ls->async_lock);
}

Expand Down
2 changes: 1 addition & 1 deletion trunk/fs/gfs2/ops_fstype.c
Original file line number Diff line number Diff line change
Expand Up @@ -874,7 +874,7 @@ static int fill_super(struct super_block *sb, void *data, int silent)
fail_locking:
init_locking(sdp, &mount_gh, UNDO);
fail_lm:
gfs2_gl_hash_clear(sdp, WAIT);
gfs2_gl_hash_clear(sdp);
gfs2_lm_unmount(sdp);
while (invalidate_inodes(sb))
yield();
Expand Down
2 changes: 1 addition & 1 deletion trunk/fs/gfs2/ops_super.c
Original file line number Diff line number Diff line change
Expand Up @@ -126,7 +126,7 @@ static void gfs2_put_super(struct super_block *sb)
gfs2_clear_rgrpd(sdp);
gfs2_jindex_free(sdp);
/* Take apart glock structures and buffer lists */
gfs2_gl_hash_clear(sdp, WAIT);
gfs2_gl_hash_clear(sdp);
/* Unmount the locking protocol */
gfs2_lm_unmount(sdp);

Expand Down
14 changes: 0 additions & 14 deletions trunk/fs/gfs2/sys.c
Original file line number Diff line number Diff line change
Expand Up @@ -110,18 +110,6 @@ static ssize_t statfs_sync_store(struct gfs2_sbd *sdp, const char *buf,
return len;
}

static ssize_t shrink_store(struct gfs2_sbd *sdp, const char *buf, size_t len)
{
if (!capable(CAP_SYS_ADMIN))
return -EACCES;

if (simple_strtol(buf, NULL, 0) != 1)
return -EINVAL;

gfs2_gl_hash_clear(sdp, NO_WAIT);
return len;
}

static ssize_t quota_sync_store(struct gfs2_sbd *sdp, const char *buf,
size_t len)
{
Expand Down Expand Up @@ -175,7 +163,6 @@ static struct gfs2_attr gfs2_attr_##name = __ATTR(name, mode, show, store)
GFS2_ATTR(id, 0444, id_show, NULL);
GFS2_ATTR(fsname, 0444, fsname_show, NULL);
GFS2_ATTR(freeze, 0644, freeze_show, freeze_store);
GFS2_ATTR(shrink, 0200, NULL, shrink_store);
GFS2_ATTR(withdraw, 0644, withdraw_show, withdraw_store);
GFS2_ATTR(statfs_sync, 0200, NULL, statfs_sync_store);
GFS2_ATTR(quota_sync, 0200, NULL, quota_sync_store);
Expand All @@ -186,7 +173,6 @@ static struct attribute *gfs2_attrs[] = {
&gfs2_attr_id.attr,
&gfs2_attr_fsname.attr,
&gfs2_attr_freeze.attr,
&gfs2_attr_shrink.attr,
&gfs2_attr_withdraw.attr,
&gfs2_attr_statfs_sync.attr,
&gfs2_attr_quota_sync.attr,
Expand Down
4 changes: 0 additions & 4 deletions trunk/include/linux/lm_interface.h
Original file line number Diff line number Diff line change
Expand Up @@ -138,9 +138,6 @@ typedef void (*lm_callback_t) (void *ptr, unsigned int type, void *data);
* LM_CB_NEED_RECOVERY
* The given journal needs to be recovered.
*
* LM_CB_DROPLOCKS
* Reduce the number of cached locks.
*
* LM_CB_ASYNC
* The given lock has been granted.
*/
Expand All @@ -149,7 +146,6 @@ typedef void (*lm_callback_t) (void *ptr, unsigned int type, void *data);
#define LM_CB_NEED_D 258
#define LM_CB_NEED_S 259
#define LM_CB_NEED_RECOVERY 260
#define LM_CB_DROPLOCKS 261
#define LM_CB_ASYNC 262

/*
Expand Down

0 comments on commit db5beb4

Please sign in to comment.