summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2011-06-17 17:14:27 +0400
committerAl Viro <viro@zeniv.linux.org.uk>2011-06-25 02:39:41 +0400
commitd687ca380f1a8f3043f42efd2403cbe58c846e70 (patch)
treec18d1ad493a08fbbe2ffcb03a7727f7aa454ff11
parent2c6292ae4be00454882246d07f38cdf15a823c2a (diff)
downloadlinux-d687ca380f1a8f3043f42efd2403cbe58c846e70.tar.xz
cifs: leak on mount if we share superblock
cifs_sb and nls end up leaked... Acked-by: Pavel Shilovsky <piastryyy@gmail.com> Reviewed-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r--fs/cifs/cifsfs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/cifs/cifsfs.c b/fs/cifs/cifsfs.c
index 8f7451f3c8e6..4162ee45d043 100644
--- a/fs/cifs/cifsfs.c
+++ b/fs/cifs/cifsfs.c
@@ -701,6 +701,8 @@ cifs_do_mount(struct file_system_type *fs_type,
if (sb->s_fs_info) {
cFYI(1, "Use existing superblock");
+ unload_nls(cifs_sb->local_nls);
+ kfree(cifs_sb);
goto out_shared;
}