aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/super.c
diff options
context:
space:
mode:
authorMark Fasheh <mfasheh@suse.com>2008-01-29 19:59:56 -0500
committerMark Fasheh <mfasheh@suse.com>2008-04-18 11:56:04 -0400
commit0abd6d1803b01c741430af270026d1d95a103d9c (patch)
treec1aca3d286990be6f9043e28ad0bacaf3443ef54 /fs/ocfs2/super.c
parent6953b4c008628b945bfe0cee97f6e78a98773859 (diff)
ocfs2: Fill node number during cluster stack init
It doesn't make sense to query for a node number before connecting to the cluster stack. This should be safe to do because node_num is only just printed, and we're actually only moving the setting of node num a small amount further in the mount process. [ Disconnect when node query fails -- Joel ] Reviewed-by: Joel Becker <joel.becker@oracle.com> Signed-off-by: Mark Fasheh <mfasheh@suse.com>
Diffstat (limited to 'fs/ocfs2/super.c')
-rw-r--r--fs/ocfs2/super.c33
1 files changed, 0 insertions, 33 deletions
diff --git a/fs/ocfs2/super.c b/fs/ocfs2/super.c
index 8f536b39ce5b..fa9c46e2eab8 100644
--- a/fs/ocfs2/super.c
+++ b/fs/ocfs2/super.c
@@ -108,7 +108,6 @@ static int ocfs2_sync_fs(struct super_block *sb, int wait);
108static int ocfs2_init_global_system_inodes(struct ocfs2_super *osb); 108static int ocfs2_init_global_system_inodes(struct ocfs2_super *osb);
109static int ocfs2_init_local_system_inodes(struct ocfs2_super *osb); 109static int ocfs2_init_local_system_inodes(struct ocfs2_super *osb);
110static void ocfs2_release_system_inodes(struct ocfs2_super *osb); 110static void ocfs2_release_system_inodes(struct ocfs2_super *osb);
111static int ocfs2_fill_local_node_info(struct ocfs2_super *osb);
112static int ocfs2_check_volume(struct ocfs2_super *osb); 111static int ocfs2_check_volume(struct ocfs2_super *osb);
113static int ocfs2_verify_volume(struct ocfs2_dinode *di, 112static int ocfs2_verify_volume(struct ocfs2_dinode *di,
114 struct buffer_head *bh, 113 struct buffer_head *bh,
@@ -1126,32 +1125,6 @@ static int ocfs2_get_sector(struct super_block *sb,
1126 return 0; 1125 return 0;
1127} 1126}
1128 1127
1129/* ocfs2 1.0 only allows one cluster and node identity per kernel image. */
1130static int ocfs2_fill_local_node_info(struct ocfs2_super *osb)
1131{
1132 int status;
1133
1134 /* XXX hold a ref on the node while mounte? easy enough, if
1135 * desirable. */
1136 if (ocfs2_mount_local(osb))
1137 osb->node_num = 0;
1138 else {
1139 status = ocfs2_cluster_this_node(&osb->node_num);
1140 if (status < 0) {
1141 mlog_errno(status);
1142 mlog(ML_ERROR,
1143 "could not find this host's node number\n");
1144 goto bail;
1145 }
1146 }
1147
1148 mlog(0, "I am node %u\n", osb->node_num);
1149
1150 status = 0;
1151bail:
1152 return status;
1153}
1154
1155static int ocfs2_mount_volume(struct super_block *sb) 1128static int ocfs2_mount_volume(struct super_block *sb)
1156{ 1129{
1157 int status = 0; 1130 int status = 0;
@@ -1163,12 +1136,6 @@ static int ocfs2_mount_volume(struct super_block *sb)
1163 if (ocfs2_is_hard_readonly(osb)) 1136 if (ocfs2_is_hard_readonly(osb))
1164 goto leave; 1137 goto leave;
1165 1138
1166 status = ocfs2_fill_local_node_info(osb);
1167 if (status < 0) {
1168 mlog_errno(status);
1169 goto leave;
1170 }
1171
1172 status = ocfs2_dlm_init(osb); 1139 status = ocfs2_dlm_init(osb);
1173 if (status < 0) { 1140 if (status < 0) {
1174 mlog_errno(status); 1141 mlog_errno(status);