summaryrefslogtreecommitdiffstats
path: root/fs/squashfs/super.c
diff options
context:
space:
mode:
authorPhillip Lougher <phillip@lougher.demon.co.uk>2010-04-16 02:01:36 +0200
committerPhillip Lougher <phillip@lougher.demon.co.uk>2010-04-25 02:49:17 +0200
commit1cb08e97389bb603e1b999312d9686c8faf0187a (patch)
treeeb09f54f0eae17a29c5f09418558d7ed141d4454 /fs/squashfs/super.c
parentsquashfs: fix locking bug in zlib wrapper (diff)
downloadlinux-1cb08e97389bb603e1b999312d9686c8faf0187a.tar.xz
linux-1cb08e97389bb603e1b999312d9686c8faf0187a.zip
squashfs: fix warn_on when root inode is corrupted
Fix warn_on triggered by mounting a fsfuzzer corrupted file system, where the root inode has been corrupted. Signed-off-by: Phillip Lougher <phillip@lougher.demon.co.uk> Reported-by: Steve Grubb <sgrubb@redhat.com>
Diffstat (limited to 'fs/squashfs/super.c')
-rw-r--r--fs/squashfs/super.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/squashfs/super.c b/fs/squashfs/super.c
index 3550aec2f655..07ceeb8d8f53 100644
--- a/fs/squashfs/super.c
+++ b/fs/squashfs/super.c
@@ -275,7 +275,8 @@ allocate_root:
err = squashfs_read_inode(root, root_inode);
if (err) {
- iget_failed(root);
+ make_bad_inode(root);
+ iput(root);
goto failed_mount;
}
insert_inode_hash(root);