aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/xfs_file.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/xfs/xfs_file.c')
-rw-r--r--fs/xfs/xfs_file.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/fs/xfs/xfs_file.c b/fs/xfs/xfs_file.c
index 299aee4b7b0b..35309bd046be 100644
--- a/fs/xfs/xfs_file.c
+++ b/fs/xfs/xfs_file.c
@@ -734,7 +734,7 @@ xfs_file_fallocate(
734 struct xfs_inode *ip = XFS_I(inode); 734 struct xfs_inode *ip = XFS_I(inode);
735 long error; 735 long error;
736 enum xfs_prealloc_flags flags = 0; 736 enum xfs_prealloc_flags flags = 0;
737 uint iolock = XFS_IOLOCK_EXCL; 737 uint iolock = XFS_IOLOCK_EXCL | XFS_MMAPLOCK_EXCL;
738 loff_t new_size = 0; 738 loff_t new_size = 0;
739 bool do_file_insert = false; 739 bool do_file_insert = false;
740 740
@@ -748,9 +748,6 @@ xfs_file_fallocate(
748 if (error) 748 if (error)
749 goto out_unlock; 749 goto out_unlock;
750 750
751 xfs_ilock(ip, XFS_MMAPLOCK_EXCL);
752 iolock |= XFS_MMAPLOCK_EXCL;
753
754 if (mode & FALLOC_FL_PUNCH_HOLE) { 751 if (mode & FALLOC_FL_PUNCH_HOLE) {
755 error = xfs_free_file_space(ip, offset, len); 752 error = xfs_free_file_space(ip, offset, len);
756 if (error) 753 if (error)