Re: [RFC PATCH] 9p: create writeback fid on shared mmap

From: Dominique Martinet
Date: Sun Dec 06 2020 - 04:17:32 EST


Chengguang Xu wrote on Sat, Dec 05, 2020:
> If vma is shared and the file was opened for writing,
> we should also create writeback fid because vma may be
> mprotected writable even if now readonly.

Hm, I guess it makes sense.

> Signed-off-by: Chengguang Xu <cgxu519@xxxxxxxxxxxx>
> ---
> Caveat: Only compile tested.

Will test later and add it to next then, might be a bit.


> fs/9p/vfs_file.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/fs/9p/vfs_file.c b/fs/9p/vfs_file.c
> index b177fd3b1eb3..791839c2dd5c 100644
> --- a/fs/9p/vfs_file.c
> +++ b/fs/9p/vfs_file.c
> @@ -516,8 +516,7 @@ v9fs_mmap_file_mmap(struct file *filp, struct vm_area_struct *vma)
> v9inode = V9FS_I(inode);
> mutex_lock(&v9inode->v_mutex);
> if (!v9inode->writeback_fid &&
> - (vma->vm_flags & VM_SHARED) &&
> - (vma->vm_flags & VM_WRITE)) {
> + mapping_writably_mapped(filp->f_mapping)) {
> /*
> * clone a fid and add it to writeback_fid
> * we do it during mmap instead of
--
Dominique