Skip to content

Commit

Permalink
ocfs2: Clean up stackglue initialization
Browse files Browse the repository at this point in the history
The stack glue initialization function needs a better name so that it can be
used cleanly when stackglue becomes a module.

Signed-off-by: Joel Becker <[email protected]>
Signed-off-by: Mark Fasheh <[email protected]>
  • Loading branch information
Joel Becker authored and Mark Fasheh committed Apr 18, 2008
1 parent cf0acdc commit 63e0c48
Show file tree
Hide file tree
Showing 5 changed files with 9 additions and 22 deletions.
9 changes: 2 additions & 7 deletions fs/ocfs2/dlmglue.c
Original file line number Diff line number Diff line change
Expand Up @@ -3366,16 +3366,11 @@ static struct ocfs2_locking_protocol lproto = {
.lp_unlock_ast = ocfs2_unlock_ast,
};

/* This interface isn't the final one, hence the less-than-perfect names */
void dlmglue_init_stack(void)
void ocfs2_set_locking_protocol(void)
{
o2cb_get_stack(&lproto);
ocfs2_stack_glue_set_locking_protocol(&lproto);
}

void dlmglue_exit_stack(void)
{
o2cb_put_stack();
}

static void ocfs2_process_blocked_lock(struct ocfs2_super *osb,
struct ocfs2_lock_res *lockres)
Expand Down
5 changes: 2 additions & 3 deletions fs/ocfs2/dlmglue.h
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,6 @@ void ocfs2_wake_downconvert_thread(struct ocfs2_super *osb);
struct ocfs2_dlm_debug *ocfs2_new_dlm_debug(void);
void ocfs2_put_dlm_debug(struct ocfs2_dlm_debug *dlm_debug);

void dlmglue_init_stack(void);
void dlmglue_exit_stack(void);

/* To set the locking protocol on module initialization */
void ocfs2_set_locking_protocol(void);
#endif /* DLMGLUE_H */
8 changes: 2 additions & 6 deletions fs/ocfs2/stackglue.c
Original file line number Diff line number Diff line change
Expand Up @@ -429,14 +429,10 @@ int ocfs2_cluster_this_node(unsigned int *node)
return 0;
}

void o2cb_get_stack(struct ocfs2_locking_protocol *proto)
void ocfs2_stack_glue_set_locking_protocol(struct ocfs2_locking_protocol *proto)
{
BUG_ON(proto == NULL);
BUG_ON(proto != NULL);

lproto = proto;
}

void o2cb_put_stack(void)
{
lproto = NULL;
}
3 changes: 1 addition & 2 deletions fs/ocfs2/stackglue.h
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,6 @@ int ocfs2_dlm_lock_status(union ocfs2_dlm_lksb *lksb);
void *ocfs2_dlm_lvb(union ocfs2_dlm_lksb *lksb);
void ocfs2_dlm_dump_lksb(union ocfs2_dlm_lksb *lksb);

void o2cb_get_stack(struct ocfs2_locking_protocol *proto);
void o2cb_put_stack(void);
void ocfs2_stack_glue_set_locking_protocol(struct ocfs2_locking_protocol *proto);

#endif /* STACKGLUE_H */
6 changes: 2 additions & 4 deletions fs/ocfs2/super.c
Original file line number Diff line number Diff line change
Expand Up @@ -922,8 +922,6 @@ static int __init ocfs2_init(void)

ocfs2_print_version();

dlmglue_init_stack();

status = init_ocfs2_uptodate_cache();
if (status < 0) {
mlog_errno(status);
Expand All @@ -948,6 +946,8 @@ static int __init ocfs2_init(void)
mlog(ML_ERROR, "Unable to create ocfs2 debugfs root.\n");
}

ocfs2_set_locking_protocol();

leave:
if (status < 0) {
ocfs2_free_mem_caches();
Expand Down Expand Up @@ -979,8 +979,6 @@ static void __exit ocfs2_exit(void)

exit_ocfs2_uptodate_cache();

dlmglue_exit_stack();

mlog_exit_void();
}

Expand Down

0 comments on commit 63e0c48

Please sign in to comment.