Gitweb:
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e9b3961b66bb1e93762895d809be074ea109c77c
Commit: e9b3961b66bb1e93762895d809be074ea109c77c
Parent: e11400b0cadc97cb1062912c1028e965c93fa9b3
Author: Miklos Szeredi <[EMAIL PROTECTED]>
AuthorDate: Fri Feb 8 04:21:36 2008 -0800
Committer: Linus Torvalds <[EMAIL PROTECTED]>
CommitDate: Fri Feb 8 09:22:39 2008 -0800
mount options: fix affs
Add a .show_options super operation to affs.
Use generic_show_options() and save the complete option string in
affs_fill_super() and affs_remount().
Signed-off-by: Miklos Szeredi <[EMAIL PROTECTED]>
Cc: Roman Zippel <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>
---
fs/affs/super.c | 14 ++++++++++++--
1 files changed, 12 insertions(+), 2 deletions(-)
diff --git a/fs/affs/super.c b/fs/affs/super.c
index 3c45d49..d2dc047 100644
--- a/fs/affs/super.c
+++ b/fs/affs/super.c
@@ -122,6 +122,7 @@ static const struct super_operations affs_sops = {
.write_super = affs_write_super,
.statfs = affs_statfs,
.remount_fs = affs_remount,
+ .show_options = generic_show_options,
};
enum {
@@ -272,6 +273,8 @@ static int affs_fill_super(struct super_block *sb, void
*data, int silent)
u8 sig[4];
int ret = -EINVAL;
+ save_mount_options(sb, data);
+
pr_debug("AFFS: read_super(%s)\n",data ? (const char *)data : "no
options");
sb->s_magic = AFFS_SUPER_MAGIC;
@@ -487,14 +490,21 @@ affs_remount(struct super_block *sb, int *flags, char
*data)
int root_block;
unsigned long mount_flags;
int res = 0;
+ char *new_opts = kstrdup(data, GFP_KERNEL);
pr_debug("AFFS: remount(flags=0x%x,opts=\"%s\")\n",*flags,data);
*flags |= MS_NODIRATIME;
- if (!parse_options(data,&uid,&gid,&mode,&reserved,&root_block,
- &blocksize,&sbi->s_prefix,sbi->s_volume,&mount_flags))
+ if (!parse_options(data, &uid, &gid, &mode, &reserved, &root_block,
+ &blocksize, &sbi->s_prefix, sbi->s_volume,
+ &mount_flags)) {
+ kfree(new_opts);
return -EINVAL;
+ }
+ kfree(sb->s_options);
+ sb->s_options = new_opts;
+
sbi->s_flags = mount_flags;
sbi->s_mode = mode;
sbi->s_uid = uid;
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html