diff options
author | Bob Peterson <rpeterso@redhat.com> | 2017-05-26 08:28:56 -0500 |
---|---|---|
committer | Bob Peterson <rpeterso@redhat.com> | 2017-06-12 14:38:53 -0500 |
commit | d87d62b75dfd8d33dc1baf0c4d3792788b554661 (patch) | |
tree | 3f5df1442104304257b3d52356ce3f6b023a0fb8 /fs/gfs2 | |
parent | 3ef2bc099d1cce09e2844467e2ced98e1a44609d (diff) | |
download | linux-d87d62b75dfd8d33dc1baf0c4d3792788b554661.tar.gz linux-d87d62b75dfd8d33dc1baf0c4d3792788b554661.tar.bz2 linux-d87d62b75dfd8d33dc1baf0c4d3792788b554661.zip |
GFS2: Withdraw when directory entry inconsistencies are detected
This patch prints an inode consistency error and withdraws the file
system when directory entry counts are mismatched.
Signed-off-by: Bob Peterson <rpeterso@redhat.com>
Diffstat (limited to 'fs/gfs2')
-rw-r--r-- | fs/gfs2/dir.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/gfs2/dir.c b/fs/gfs2/dir.c index 79113219be5f..96a7487b09b6 100644 --- a/fs/gfs2/dir.c +++ b/fs/gfs2/dir.c @@ -1444,7 +1444,7 @@ static int gfs2_dir_read_leaf(struct inode *inode, struct dir_context *ctx, "g.offset (%u)\n", (unsigned long long)bh->b_blocknr, entries2, g.offset); - + gfs2_consist_inode(ip); error = -EIO; goto out_free; } @@ -1612,6 +1612,7 @@ int gfs2_dir_read(struct inode *inode, struct dir_context *ctx, (unsigned long long)dip->i_no_addr, dip->i_entries, g.offset); + gfs2_consist_inode(dip); error = -EIO; goto out; } |