Message ID | 20210525135100.11221-2-jack@suse.cz (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fs: Hole punch vs page cache filling races | expand |
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 >
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); + int (*fadvise)(struct file *, loff_t, loff_t, int); locking rules: All may block.
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(-)