commit 8b552a256e448345dc0c89e41e1260b5336c187d
Author: Yiannis Pericleous <[EMAIL PROTECTED]>
Date:   Sat May 19 15:23:22 2007 -0400

    mmap: sync_page bug, call sync_page on lower page, not unionfs page

diff --git a/fs/unionfs/mmap.c b/fs/unionfs/mmap.c
index 7d1e2f7..93aba3a 100644
--- a/fs/unionfs/mmap.c
+++ b/fs/unionfs/mmap.c
@@ -269,7 +269,7 @@ void unionfs_sync_page(struct page *page)
        struct inode *inode;
        struct inode *lower_inode;
        struct page *lower_page;
-       struct address_space *mapping = page->mapping;
+       struct address_space *mapping;
 
        inode = page->mapping->host;
        lower_inode = unionfs_lower_inode(inode);
@@ -280,8 +280,9 @@ void unionfs_sync_page(struct page *page)
                goto out;
 
        /* do the actual sync */
+       mapping = lower_page->mapping;
        if (mapping && mapping->a_ops && mapping->a_ops->sync_page)
-               mapping->a_ops->sync_page(page);
+               mapping->a_ops->sync_page(lower_page);
 
        unlock_page(lower_page);        /* b/c grab_cache_page locked it */
        page_cache_release(lower_page); /* b/c grab_cache_page increased refcnt 
*/
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs

Reply via email to