Re: [PATCH 02/13] documentation: Sync file_operations members with reality

Darrick J. Wong
2021-05-25T20:43:15Z

On Tue, May 25, 2021 at 03:50:39PM +0200, Jan Kara wrote:
> Sync listing of struct file_operations members with the real one in
> fs.h.
>
> Signed-off-by: Jan Kara <jack@suse.cz>
> ---
> Documentation/filesystems/locking.rst | 15 +++++++++------
> 1 file changed, 9 insertions(+), 6 deletions(-)
>
> diff --git a/Documentation/filesystems/locking.rst b/Documentation/filesystems/locking.rst
> index 1e894480115b..4ed2b22bd0a8 100644
> --- a/Documentation/filesystems/locking.rst
> +++ b/Documentation/filesystems/locking.rst
> @@ -506,6 +506,7 @@ prototypes::
> ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);
> ssize_t (*read_iter) (struct kiocb *, struct iov_iter *);
> ssize_t (*write_iter) (struct kiocb *, struct iov_iter *);
> + int (*iopoll) (struct kiocb *kiocb, bool spin);
> int (*iterate) (struct file *, struct dir_context *);
> int (*iterate_shared) (struct file *, struct dir_context *);
> __poll_t (*poll) (struct file *, struct poll_table_struct *);
> @@ -518,12 +519,6 @@ prototypes::
> int (*fsync) (struct file *, loff_t start, loff_t end, int datasync);
> int (*fasync) (int, struct file *, int);
> int (*lock) (struct file *, int, struct file_lock *);
> - ssize_t (*readv) (struct file *, const struct iovec *, unsigned long,
> - loff_t *);
> - ssize_t (*writev) (struct file *, const struct iovec *, unsigned long,
> - loff_t *);
> - ssize_t (*sendfile) (struct file *, loff_t *, size_t, read_actor_t,
> - void __user *);
> ssize_t (*sendpage) (struct file *, struct page *, int, size_t,
> loff_t *, int);
> unsigned long (*get_unmapped_area)(struct file *, unsigned long,
> @@ -536,6 +531,14 @@ prototypes::
> size_t, unsigned int);
> int (*setlease)(struct file *, long, struct file_lock **, void **);
> long (*fallocate)(struct file *, int, loff_t, loff_t);
> + void (*show_fdinfo)(struct seq_file *m, struct file *f);
> + unsigned (*mmap_capabilities)(struct file *);
> + ssize_t (*copy_file_range)(struct file *, loff_t, struct file *,
> + loff_t, size_t, unsigned int);
> + loff_t (*remap_file_range)(struct file *file_in, loff_t pos_in,
> + struct file *file_out, loff_t pos_out,
> + loff_t len, unsigned int remap_flags);

Acked-by: Darrick J. Wong <djwong@kernel.org>

The remap_file_range part looks correct to me. At a glance the others
seem fine too, but I'm not as familiar with them...

--D

> + int (*fadvise)(struct file *, loff_t, loff_t, int);
>
> locking rules:
> All may block.
> --
> 2.26.2
>