Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7dc2cf1c authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Steven Whitehouse
Browse files

[GFS2] fix file_system_type leak on gfs2meta mount



get_gfs2_sb does a get_fs_type without doing a put_filesystem and
thus leaking a file_system_type reference everytime it's called.

Just use gfs2_fs_type directly instead of doing the lookup and thus
fix the problem.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
parent 9b8c81d1
Loading
Loading
Loading
Loading
+1 −3
Original line number Diff line number Diff line
@@ -943,7 +943,6 @@ static struct super_block* get_gfs2_sb(const char *dev_name)
{
	struct kstat stat;
	struct nameidata nd;
	struct file_system_type *fstype;
	struct super_block *sb = NULL, *s;
	int error;

@@ -955,8 +954,7 @@ static struct super_block* get_gfs2_sb(const char *dev_name)
	}
	error = vfs_getattr(nd.path.mnt, nd.path.dentry, &stat);

	fstype = get_fs_type("gfs2");
	list_for_each_entry(s, &fstype->fs_supers, s_instances) {
	list_for_each_entry(s, &gfs2_fs_type.fs_supers, s_instances) {
		if ((S_ISBLK(stat.mode) && s->s_dev == stat.rdev) ||
		    (S_ISDIR(stat.mode) &&
		     s == nd.path.dentry->d_inode->i_sb)) {