ocfs2: Remove ->hangup() from stack glue operations.

The ->hangup() call was only used to execute ocfs2_hb_ctl.  Now that
the generic stack glue code handles this, the underlying stack drivers
don't need to know about it.

Signed-off-by: Joel Becker <joel.becker@oracle.com>
Signed-off-by: Mark Fasheh <mfasheh@suse.com>
This commit is contained in:
Joel Becker 2008-05-30 15:58:26 -07:00 committed by Mark Fasheh
parent 9f9a99f4ec
commit 2c39450b39
4 changed files with 6 additions and 23 deletions

View File

@ -317,8 +317,7 @@ out:
return rc;
}
static int o2cb_cluster_disconnect(struct ocfs2_cluster_connection *conn,
int hangup_pending)
static int o2cb_cluster_disconnect(struct ocfs2_cluster_connection *conn)
{
struct dlm_ctxt *dlm = conn->cc_lockspace;
struct o2dlm_private *priv = conn->cc_private;

View File

@ -816,8 +816,7 @@ out:
return rc;
}
static int user_cluster_disconnect(struct ocfs2_cluster_connection *conn,
int hangup_pending)
static int user_cluster_disconnect(struct ocfs2_cluster_connection *conn)
{
dlm_release_lockspace(conn->cc_lockspace, 2);
conn->cc_lockspace = NULL;

View File

@ -352,7 +352,7 @@ int ocfs2_cluster_disconnect(struct ocfs2_cluster_connection *conn,
BUG_ON(conn == NULL);
ret = active_stack->sp_ops->disconnect(conn, hangup_pending);
ret = active_stack->sp_ops->disconnect(conn);
/* XXX Should we free it anyway? */
if (!ret) {
@ -406,9 +406,6 @@ void ocfs2_cluster_hangup(const char *group, int grouplen)
BUG_ON(group == NULL);
BUG_ON(group[grouplen] != '\0');
if (active_stack->sp_ops->hangup)
active_stack->sp_ops->hangup(group, grouplen);
ocfs2_leave_group(group);
/* cluster_disconnect() was called with hangup_pending==1 */

View File

@ -134,22 +134,10 @@ struct ocfs2_stack_operations {
* be freed. Thus, a stack must not return from ->disconnect()
* until it will no longer reference the conn pointer.
*
* If hangup_pending is zero, ocfs2_cluster_disconnect() will also
* be dropping the reference on the module.
* Once this call returns, the stack glue will be dropping this
* connection's reference on the module.
*/
int (*disconnect)(struct ocfs2_cluster_connection *conn,
int hangup_pending);
/*
* ocfs2_cluster_hangup() exists for compatibility with older
* ocfs2 tools. Only the classic stack really needs it. As such
* ->hangup() is not required of all stacks. See the comment by
* ocfs2_cluster_hangup() for more details.
*
* Note that ocfs2_cluster_hangup() can only be called if
* hangup_pending was passed to ocfs2_cluster_disconnect().
*/
void (*hangup)(const char *group, int grouplen);
int (*disconnect)(struct ocfs2_cluster_connection *conn);
/*
* ->this_node() returns the cluster's unique identifier for the