aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/filesystems
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-16 23:27:56 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-16 23:27:56 -0400
commit4fc8adcfec3da639da76e8314c9ccefe5bf9a045 (patch)
treee07a2dea8acf04d8bbbecd4fd3a571653ecdd953 /Documentation/filesystems
parent84588e7a5d8220446d677d7b909a20ee7a4496b9 (diff)
parentaa4d86163e4e91a1ac560954a554bab417e338f4 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull third hunk of vfs changes from Al Viro: "This contains the ->direct_IO() changes from Omar + saner generic_write_checks() + dealing with fcntl()/{read,write}() races (mirroring O_APPEND/O_DIRECT into iocb->ki_flags and instead of repeatedly looking at ->f_flags, which can be changed by fcntl(2), check ->ki_flags - which cannot) + infrastructure bits for dhowells' d_inode annotations + Christophs switch of /dev/loop to vfs_iter_write()" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (30 commits) block: loop: switch to VFS ITER_BVEC configfs: Fix inconsistent use of file_inode() vs file->f_path.dentry->d_inode VFS: Make pathwalk use d_is_reg() rather than S_ISREG() VFS: Fix up debugfs to use d_is_dir() in place of S_ISDIR() VFS: Combine inode checks with d_is_negative() and d_is_positive() in pathwalk NFS: Don't use d_inode as a variable name VFS: Impose ordering on accesses of d_inode and d_flags VFS: Add owner-filesystem positive/negative dentry checks nfs: generic_write_checks() shouldn't be done on swapout... ocfs2: use __generic_file_write_iter() mirror O_APPEND and O_DIRECT into iocb->ki_flags switch generic_write_checks() to iocb and iter ocfs2: move generic_write_checks() before the alignment checks ocfs2_file_write_iter: stop messing with ppos udf_file_write_iter: reorder and simplify fuse: ->direct_IO() doesn't need generic_write_checks() ext4_file_write_iter: move generic_write_checks() up xfs_file_aio_write_checks: switch to iocb/iov_iter generic_write_checks(): drop isblk argument blkdev_write_iter: expand generic_file_checks() call in there ...
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r--Documentation/filesystems/Locking2
-rw-r--r--Documentation/filesystems/vfs.txt2
2 files changed, 2 insertions, 2 deletions
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking
index 7c3f187d48bf..0a926e2ba3ab 100644
--- a/Documentation/filesystems/Locking
+++ b/Documentation/filesystems/Locking
@@ -196,7 +196,7 @@ prototypes:
196 void (*invalidatepage) (struct page *, unsigned int, unsigned int); 196 void (*invalidatepage) (struct page *, unsigned int, unsigned int);
197 int (*releasepage) (struct page *, int); 197 int (*releasepage) (struct page *, int);
198 void (*freepage)(struct page *); 198 void (*freepage)(struct page *);
199 int (*direct_IO)(int, struct kiocb *, struct iov_iter *iter, loff_t offset); 199 int (*direct_IO)(struct kiocb *, struct iov_iter *iter, loff_t offset);
200 int (*migratepage)(struct address_space *, struct page *, struct page *); 200 int (*migratepage)(struct address_space *, struct page *, struct page *);
201 int (*launder_page)(struct page *); 201 int (*launder_page)(struct page *);
202 int (*is_partially_uptodate)(struct page *, unsigned long, unsigned long); 202 int (*is_partially_uptodate)(struct page *, unsigned long, unsigned long);
diff --git a/Documentation/filesystems/vfs.txt b/Documentation/filesystems/vfs.txt
index 207cdca68bed..5d833b32bbcd 100644
--- a/Documentation/filesystems/vfs.txt
+++ b/Documentation/filesystems/vfs.txt
@@ -590,7 +590,7 @@ struct address_space_operations {
590 void (*invalidatepage) (struct page *, unsigned int, unsigned int); 590 void (*invalidatepage) (struct page *, unsigned int, unsigned int);
591 int (*releasepage) (struct page *, int); 591 int (*releasepage) (struct page *, int);
592 void (*freepage)(struct page *); 592 void (*freepage)(struct page *);
593 ssize_t (*direct_IO)(int, struct kiocb *, struct iov_iter *iter, loff_t offset); 593 ssize_t (*direct_IO)(struct kiocb *, struct iov_iter *iter, loff_t offset);
594 /* migrate the contents of a page to the specified target */ 594 /* migrate the contents of a page to the specified target */
595 int (*migratepage) (struct page *, struct page *); 595 int (*migratepage) (struct page *, struct page *);
596 int (*launder_page) (struct page *); 596 int (*launder_page) (struct page *);