2022-08-11 05:28:25

by Hugh Dickins

[permalink] [raw]
Subject: [PATCH] mm/shmem: tmpfs fallocate use file_modified()

5.18 fixed the btrfs and ext4 fallocates to use file_modified(), as xfs
was already doing, to drop privileges: and fstests generic/{683,684,688}
expect this. There's no need to argue over keep-size allocation (which
could just update ctime): fix shmem_fallocate() to behave the same way.

Signed-off-by: Hugh Dickins <[email protected]>
---

mm/shmem.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- a/mm/shmem.c
+++ b/mm/shmem.c
@@ -2839,12 +2839,13 @@ static long shmem_fallocate(struct file *file, int mode, loff_t offset,

if (!(mode & FALLOC_FL_KEEP_SIZE) && offset + len > inode->i_size)
i_size_write(inode, offset + len);
- inode->i_ctime = current_time(inode);
undone:
spin_lock(&inode->i_lock);
inode->i_private = NULL;
spin_unlock(&inode->i_lock);
out:
+ if (!error)
+ file_modified(file);
inode_unlock(inode);
return error;
}


2022-08-12 08:30:59

by Christian Brauner

[permalink] [raw]
Subject: Re: [PATCH] mm/shmem: tmpfs fallocate use file_modified()

On Wed, Aug 10, 2022 at 09:55:36PM -0700, Hugh Dickins wrote:
> 5.18 fixed the btrfs and ext4 fallocates to use file_modified(), as xfs
> was already doing, to drop privileges: and fstests generic/{683,684,688}
> expect this. There's no need to argue over keep-size allocation (which
> could just update ctime): fix shmem_fallocate() to behave the same way.
>
> Signed-off-by: Hugh Dickins <[email protected]>
> ---

Looks good to me,
Acked-by: Christian Brauner (Microsoft) <[email protected]>