@@ -954,6 +954,10 @@ xfs_file_fallocate(
goto out_unlock;
}
+ error = file_modified(file);
+ if (error)
+ goto out_unlock;
+
if (mode & FALLOC_FL_PUNCH_HOLE) {
error = xfs_free_file_space(ip, offset, len);
if (error)
@@ -1055,11 +1059,12 @@ xfs_file_fallocate(
if (error)
goto out_unlock;
}
- }
- error = xfs_update_prealloc_flags(ip, flags);
- if (error)
- goto out_unlock;
+ error = xfs_update_prealloc_flags(ip, XFS_PREALLOC_SET);
+ if (error)
+ goto out_unlock;
+
+ }
/* Change file size if needed */
if (new_size) {