[PATCH] xfs: don't leak root inode reference

Ben Myers bpm at sgi.com
Mon Aug 26 15:47:30 CDT 2013


Looks like in 48fde701 we removed the iput of the root inode in
xfs_fs_fill_super for the error case.  Add it back.

Signed-off-by: Ben Myers <bpm at sgi.com>

---
 fs/xfs/xfs_super.c |    6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Index: b/fs/xfs/xfs_super.c
===================================================================
--- a/fs/xfs/xfs_super.c	2013-08-26 15:36:09.170848579 -0500
+++ b/fs/xfs/xfs_super.c	2013-08-26 15:40:19.450817933 -0500
@@ -1493,12 +1493,12 @@ xfs_fs_fill_super(
 	}
 	if (is_bad_inode(root)) {
 		error = EINVAL;
-		goto out_unmount;
+		goto out_iput;
 	}
 	sb->s_root = d_make_root(root);
 	if (!sb->s_root) {
 		error = ENOMEM;
-		goto out_unmount;
+		goto out_iput;
 	}
 
 	return 0;
@@ -1519,6 +1519,8 @@ out_destroy_workqueues:
  out:
 	return -error;
 
+ out_iput:
+	iput(root);
  out_unmount:
 	xfs_filestream_unmount(mp);
 	xfs_unmountfs(mp);



More information about the xfs mailing list