diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-07-16 15:57:38 -0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2014-07-16 15:57:38 -0400 |
commit | afdb094380889222583df9ef803587f6b8a82c8d (patch) | |
tree | 4a03c516568e5c8b994a5739f3d34f4552c78898 /Documentation/filesystems | |
parent | be11e6d86081aa6328eaa4fe6dd14ccf39a023c8 (diff) | |
parent | 1795cd9b3a91d4b5473c97f491d63892442212ab (diff) |
Merge tag 'v3.16-rc5' into timers/core
Reason: Bring in upstream modifications, so the pending changes which
depend on them can be queued.
Diffstat (limited to 'Documentation/filesystems')
-rw-r--r-- | Documentation/filesystems/Locking | 5 | ||||
-rw-r--r-- | Documentation/filesystems/f2fs.txt | 8 | ||||
-rw-r--r-- | Documentation/filesystems/nfs/nfs41-server.txt | 2 | ||||
-rw-r--r-- | Documentation/filesystems/vfs.txt | 13 |
4 files changed, 16 insertions, 12 deletions
diff --git a/Documentation/filesystems/Locking b/Documentation/filesystems/Locking index eba790134253..b18dd1779029 100644 --- a/Documentation/filesystems/Locking +++ b/Documentation/filesystems/Locking | |||
@@ -196,8 +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 *, const struct iovec *iov, | 199 | int (*direct_IO)(int, struct kiocb *, struct iov_iter *iter, loff_t offset); |
200 | loff_t offset, unsigned long nr_segs); | ||
201 | int (*get_xip_mem)(struct address_space *, pgoff_t, int, void **, | 200 | int (*get_xip_mem)(struct address_space *, pgoff_t, int, void **, |
202 | unsigned long *); | 201 | unsigned long *); |
203 | int (*migratepage)(struct address_space *, struct page *, struct page *); | 202 | int (*migratepage)(struct address_space *, struct page *, struct page *); |
@@ -431,6 +430,8 @@ prototypes: | |||
431 | ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *); | 430 | ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *); |
432 | ssize_t (*aio_read) (struct kiocb *, const struct iovec *, unsigned long, loff_t); | 431 | ssize_t (*aio_read) (struct kiocb *, const struct iovec *, unsigned long, loff_t); |
433 | ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); | 432 | ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); |
433 | ssize_t (*read_iter) (struct kiocb *, struct iov_iter *); | ||
434 | ssize_t (*write_iter) (struct kiocb *, struct iov_iter *); | ||
434 | int (*iterate) (struct file *, struct dir_context *); | 435 | int (*iterate) (struct file *, struct dir_context *); |
435 | unsigned int (*poll) (struct file *, struct poll_table_struct *); | 436 | unsigned int (*poll) (struct file *, struct poll_table_struct *); |
436 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); | 437 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); |
diff --git a/Documentation/filesystems/f2fs.txt b/Documentation/filesystems/f2fs.txt index 25311e113e75..51afba17bbae 100644 --- a/Documentation/filesystems/f2fs.txt +++ b/Documentation/filesystems/f2fs.txt | |||
@@ -461,11 +461,11 @@ The number of blocks and buckets are determined by, | |||
461 | # of blocks in level #n = | | 461 | # of blocks in level #n = | |
462 | `- 4, Otherwise | 462 | `- 4, Otherwise |
463 | 463 | ||
464 | ,- 2^ (n + dir_level), | 464 | ,- 2^(n + dir_level), |
465 | | if n < MAX_DIR_HASH_DEPTH / 2, | 465 | | if n + dir_level < MAX_DIR_HASH_DEPTH / 2, |
466 | # of buckets in level #n = | | 466 | # of buckets in level #n = | |
467 | `- 2^((MAX_DIR_HASH_DEPTH / 2 + dir_level) - 1), | 467 | `- 2^((MAX_DIR_HASH_DEPTH / 2) - 1), |
468 | Otherwise | 468 | Otherwise |
469 | 469 | ||
470 | When F2FS finds a file name in a directory, at first a hash value of the file | 470 | When F2FS finds a file name in a directory, at first a hash value of the file |
471 | name is calculated. Then, F2FS scans the hash table in level #0 to find the | 471 | name is calculated. Then, F2FS scans the hash table in level #0 to find the |
diff --git a/Documentation/filesystems/nfs/nfs41-server.txt b/Documentation/filesystems/nfs/nfs41-server.txt index b930ad087780..c49cd7e796e7 100644 --- a/Documentation/filesystems/nfs/nfs41-server.txt +++ b/Documentation/filesystems/nfs/nfs41-server.txt | |||
@@ -176,7 +176,5 @@ Nonstandard compound limitations: | |||
176 | ca_maxrequestsize request and a ca_maxresponsesize reply, so we may | 176 | ca_maxrequestsize request and a ca_maxresponsesize reply, so we may |
177 | fail to live up to the promise we made in CREATE_SESSION fore channel | 177 | fail to live up to the promise we made in CREATE_SESSION fore channel |
178 | negotiation. | 178 | negotiation. |
179 | * No more than one read-like operation allowed per compound; encoding | ||
180 | replies that cross page boundaries (except for read data) not handled. | ||
181 | 179 | ||
182 | See also http://wiki.linux-nfs.org/wiki/index.php/Server_4.0_and_4.1_issues. | 180 | See also http://wiki.linux-nfs.org/wiki/index.php/Server_4.0_and_4.1_issues. |
diff --git a/Documentation/filesystems/vfs.txt b/Documentation/filesystems/vfs.txt index 617f6d70c077..a1d0d7a30165 100644 --- a/Documentation/filesystems/vfs.txt +++ b/Documentation/filesystems/vfs.txt | |||
@@ -589,8 +589,7 @@ struct address_space_operations { | |||
589 | void (*invalidatepage) (struct page *, unsigned int, unsigned int); | 589 | void (*invalidatepage) (struct page *, unsigned int, unsigned int); |
590 | int (*releasepage) (struct page *, int); | 590 | int (*releasepage) (struct page *, int); |
591 | void (*freepage)(struct page *); | 591 | void (*freepage)(struct page *); |
592 | ssize_t (*direct_IO)(int, struct kiocb *, const struct iovec *iov, | 592 | ssize_t (*direct_IO)(int, struct kiocb *, struct iov_iter *iter, loff_t offset); |
593 | loff_t offset, unsigned long nr_segs); | ||
594 | struct page* (*get_xip_page)(struct address_space *, sector_t, | 593 | struct page* (*get_xip_page)(struct address_space *, sector_t, |
595 | int); | 594 | int); |
596 | /* migrate the contents of a page to the specified target */ | 595 | /* migrate the contents of a page to the specified target */ |
@@ -807,6 +806,8 @@ struct file_operations { | |||
807 | ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *); | 806 | ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *); |
808 | ssize_t (*aio_read) (struct kiocb *, const struct iovec *, unsigned long, loff_t); | 807 | ssize_t (*aio_read) (struct kiocb *, const struct iovec *, unsigned long, loff_t); |
809 | ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); | 808 | ssize_t (*aio_write) (struct kiocb *, const struct iovec *, unsigned long, loff_t); |
809 | ssize_t (*read_iter) (struct kiocb *, struct iov_iter *); | ||
810 | ssize_t (*write_iter) (struct kiocb *, struct iov_iter *); | ||
810 | int (*iterate) (struct file *, struct dir_context *); | 811 | int (*iterate) (struct file *, struct dir_context *); |
811 | unsigned int (*poll) (struct file *, struct poll_table_struct *); | 812 | unsigned int (*poll) (struct file *, struct poll_table_struct *); |
812 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); | 813 | long (*unlocked_ioctl) (struct file *, unsigned int, unsigned long); |
@@ -837,11 +838,15 @@ otherwise noted. | |||
837 | 838 | ||
838 | read: called by read(2) and related system calls | 839 | read: called by read(2) and related system calls |
839 | 840 | ||
840 | aio_read: called by io_submit(2) and other asynchronous I/O operations | 841 | aio_read: vectored, possibly asynchronous read |
842 | |||
843 | read_iter: possibly asynchronous read with iov_iter as destination | ||
841 | 844 | ||
842 | write: called by write(2) and related system calls | 845 | write: called by write(2) and related system calls |
843 | 846 | ||
844 | aio_write: called by io_submit(2) and other asynchronous I/O operations | 847 | aio_write: vectored, possibly asynchronous write |
848 | |||
849 | write_iter: possibly asynchronous write with iov_iter as source | ||
845 | 850 | ||
846 | iterate: called when the VFS needs to read the directory contents | 851 | iterate: called when the VFS needs to read the directory contents |
847 | 852 | ||