Browse Source

[GFS2] setup lock_dlm kobject earlier

Setup the lock_dlm kobject before setting up the dlm lockspace instead
of after.  We want to use the sysfs files to detect the mount without
having to wait for the dlm setup which can take a while.

Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
David Teigland 19 năm trước cách đây
mục cha
commit
d2f222e631
1 tập tin đã thay đổi với 7 bổ sung7 xóa
  1. 7 7
      fs/gfs2/locking/dlm/mount.c

+ 7 - 7
fs/gfs2/locking/dlm/mount.c

@@ -143,19 +143,19 @@ static int gdlm_mount(char *table_name, char *host_data,
 	if (error)
 		goto out_free;
 
+	error = gdlm_kobject_setup(ls, fskobj);
+	if (error)
+		goto out_thread;
+
 	error = dlm_new_lockspace(ls->fsname, strlen(ls->fsname),
 				  &ls->dlm_lockspace,
 				  nodir ? DLM_LSFL_NODIR : 0,
 				  GDLM_LVB_SIZE);
 	if (error) {
 		log_error("dlm_new_lockspace error %d", error);
-		goto out_thread;
+		goto out_kobj;
 	}
 
-	error = gdlm_kobject_setup(ls, fskobj);
-	if (error)
-		goto out_dlm;
-
 	lockstruct->ls_jid = ls->jid;
 	lockstruct->ls_first = ls->first;
 	lockstruct->ls_lockspace = ls;
@@ -164,8 +164,8 @@ static int gdlm_mount(char *table_name, char *host_data,
 	lockstruct->ls_lvb_size = GDLM_LVB_SIZE;
 	return 0;
 
- out_dlm:
-	dlm_release_lockspace(ls->dlm_lockspace, 2);
+ out_kobj:
+	gdlm_kobject_release(ls);
  out_thread:
 	gdlm_release_threads(ls);
  out_free: