aboutsummaryrefslogtreecommitdiff
path: root/kernel/locking/mutex-debug.c
diff options
context:
space:
mode:
authorAmir Goldstein <[email protected]>2017-01-17 11:41:41 -0800
committerDarrick J. Wong <[email protected]>2017-01-17 11:41:41 -0800
commit3c6f46eacd876bd723a9bad3c6882714c052fd8e (patch)
tree4ea7023de1e62d8df75e5af72c0485d5ef61c175 /kernel/locking/mutex-debug.c
parentbf46ecc3d8cca05f2907cf482755c42c2b11a79d (diff)
xfs: sanity check directory inode di_size
This changes fixes an assertion hit when fuzzing on-disk i_mode values. The easy case to fix is when changing an empty file i_mode to S_IFDIR. In this case, xfs_dinode_verify() detects an illegal zero size for directory and fails to load the inode structure from disk. For the case of non empty file whose i_mode is changed to S_IFDIR, the ASSERT() statement in xfs_dir2_isblock() is replaced with return -EFSCORRUPTED, to avoid interacting with corrupted jusk also when XFS_DEBUG is disabled. Suggested-by: Darrick J. Wong <[email protected]> Reviewed-by: Christoph Hellwig <[email protected]> Signed-off-by: Amir Goldstein <[email protected]> Reviewed-by: Darrick J. Wong <[email protected]> Signed-off-by: Darrick J. Wong <[email protected]>
Diffstat (limited to 'kernel/locking/mutex-debug.c')
0 files changed, 0 insertions, 0 deletions