]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
documentation: update address_space_operations
authorMel Gorman <mgorman@suse.de>
Thu, 27 Jun 2013 23:52:09 +0000 (09:52 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Fri, 28 Jun 2013 06:37:54 +0000 (16:37 +1000)
The documentation for address_space_operations is partially out of date.

Signed-off-by: Mel Gorman <mgorman@suse.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Documentation/filesystems/vfs.txt

index 22c332ac4a75c31100f6a44dcf9abf42dc15e7b8..49254eb5efd14e32fe56a919c2f30be8d3b7cb74 100644 (file)
@@ -554,7 +554,6 @@ your filesystem. The following members are defined:
 struct address_space_operations {
        int (*writepage)(struct page *page, struct writeback_control *wbc);
        int (*readpage)(struct file *, struct page *);
-       int (*sync_page)(struct page *);
        int (*writepages)(struct address_space *, struct writeback_control *);
        int (*set_page_dirty)(struct page *page);
        int (*readpages)(struct file *filp, struct address_space *mapping,
@@ -576,6 +575,8 @@ struct address_space_operations {
        /* migrate the contents of a page to the specified target */
        int (*migratepage) (struct page *, struct page *);
        int (*launder_page) (struct page *);
+       int (*is_partially_uptodate) (struct page *, read_descriptor_t *,
+                                       unsigned long);
        int (*error_remove_page) (struct mapping *mapping, struct page *page);
        int (*swap_activate)(struct file *);
        int (*swap_deactivate)(struct file *);
@@ -607,13 +608,6 @@ struct address_space_operations {
        In this case, the page will be relocated, relocked and if
        that all succeeds, ->readpage will be called again.
 
-  sync_page: called by the VM to notify the backing store to perform all
-       queued I/O operations for a page. I/O operations for other pages
-       associated with this address_space object may also be performed.
-
-       This function is optional and is called only for pages with
-       PG_Writeback set while waiting for the writeback to complete.
-
   writepages: called by the VM to write out pages associated with the
        address_space object.  If wbc->sync_mode is WBC_SYNC_ALL, then
        the writeback_control will specify a range of pages that must be
@@ -742,6 +736,11 @@ struct address_space_operations {
        prevent redirtying the page, it is kept locked during the whole
        operation.
 
+  is_partially_uptodate: Called by the VM when reading a file through the
+       pagecache when the underlying blocksize != pagesize. If the required
+       block is up to date then the read can complete without needing the IO
+       to bring the whole page up to date.
+
   error_remove_page: normally set to generic_error_remove_page if truncation
        is ok for this address space. Used for memory failure handling.
        Setting this implies you deal with pages going away under you,