From: Miklos Szeredi Date: Fri, 8 Feb 2008 12:21:40 +0000 (-0800) Subject: mount options: fix capifs X-Git-Tag: v2.6.25-rc1~88 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e55e212c083f0c51a7d4eccd1746b6dca40ffc41;p=linux-2.6 mount options: fix capifs Add a .show_options super operation to capifs. Use generic_show_options() and save the complete option string in capifs_remount(). Signed-off-by: Miklos Szeredi Acked-by: Karsten Keil Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- diff --git a/drivers/isdn/capi/capifs.c b/drivers/isdn/capi/capifs.c index 2dd1b57b0b..6d7c47ec03 100644 --- a/drivers/isdn/capi/capifs.c +++ b/drivers/isdn/capi/capifs.c @@ -52,6 +52,7 @@ static int capifs_remount(struct super_block *s, int *flags, char *data) gid_t gid = 0; umode_t mode = 0600; char *this_char; + char *new_opt = kstrdup(data, GFP_KERNEL); this_char = NULL; while ((this_char = strsep(&data, ",")) != NULL) { @@ -72,11 +73,16 @@ static int capifs_remount(struct super_block *s, int *flags, char *data) return -EINVAL; } } + + kfree(s->s_options); + s->s_options = new_opt; + config.setuid = setuid; config.setgid = setgid; config.uid = uid; config.gid = gid; config.mode = mode; + return 0; } @@ -84,6 +90,7 @@ static struct super_operations capifs_sops = { .statfs = simple_statfs, .remount_fs = capifs_remount, + .show_options = generic_show_options, };