diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/gfs2/mount.c | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/fs/gfs2/mount.c b/fs/gfs2/mount.c index 6f006a804db3..4864659555d4 100644 --- a/fs/gfs2/mount.c +++ b/fs/gfs2/mount.c | |||
@@ -82,19 +82,20 @@ int gfs2_mount_args(struct gfs2_sbd *sdp, char *data_arg, int remount) | |||
82 | char *options, *o, *v; | 82 | char *options, *o, *v; |
83 | int error = 0; | 83 | int error = 0; |
84 | 84 | ||
85 | /* If someone preloaded options, use those instead */ | 85 | if (!remount) { |
86 | spin_lock(&gfs2_sys_margs_lock); | 86 | /* If someone preloaded options, use those instead */ |
87 | if (!remount && gfs2_sys_margs) { | 87 | spin_lock(&gfs2_sys_margs_lock); |
88 | data = gfs2_sys_margs; | 88 | if (gfs2_sys_margs) { |
89 | gfs2_sys_margs = NULL; | 89 | data = gfs2_sys_margs; |
90 | } | 90 | gfs2_sys_margs = NULL; |
91 | spin_unlock(&gfs2_sys_margs_lock); | 91 | } |
92 | spin_unlock(&gfs2_sys_margs_lock); | ||
92 | 93 | ||
93 | /* Set some defaults */ | 94 | /* Set some defaults */ |
94 | memset(args, 0, sizeof(struct gfs2_args)); | 95 | args->ar_num_glockd = GFS2_GLOCKD_DEFAULT; |
95 | args->ar_num_glockd = GFS2_GLOCKD_DEFAULT; | 96 | args->ar_quota = GFS2_QUOTA_DEFAULT; |
96 | args->ar_quota = GFS2_QUOTA_DEFAULT; | 97 | args->ar_data = GFS2_DATA_DEFAULT; |
97 | args->ar_data = GFS2_DATA_DEFAULT; | 98 | } |
98 | 99 | ||
99 | /* Split the options into tokens with the "," character and | 100 | /* Split the options into tokens with the "," character and |
100 | process them */ | 101 | process them */ |