lkml.org 
[lkml]   [2007]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[patch 3/5] fs: convert some simple filesystems
    Date
    Implement new aops for some of the simpler filesystems.

    fs/configfs/inode.c | 4 ++--
    fs/sysfs/inode.c | 4 ++--
    mm/shmem.c | 16 ++++++++++------
    3 files changed, 14 insertions(+), 10 deletions(-)

    Index: linux-2.6/mm/shmem.c
    ===================================================================
    --- linux-2.6.orig/mm/shmem.c
    +++ linux-2.6/mm/shmem.c
    @@ -1419,10 +1419,14 @@ static const struct inode_operations shm
    * lets a tmpfs file be used read-write below the loop driver.
    */
    static int
    -shmem_prepare_write(struct file *file, struct page *page, unsigned offset, unsigned to)
    -{
    - struct inode *inode = page->mapping->host;
    - return shmem_getpage(inode, page->index, &page, SGP_WRITE, NULL);
    +shmem_write_begin(struct file *file, struct address_space *mapping,
    + loff_t pos, unsigned len, int intr,
    + struct page **pagep, void **fsdata)
    +{
    + struct inode *inode = mapping->host;
    + pgoff_t index = pos >> PAGE_CACHE_SHIFT;
    + *pagep = NULL;
    + return shmem_getpage(inode, index, pagep, SGP_WRITE, NULL);
    }

    static ssize_t
    @@ -2319,8 +2323,8 @@ static const struct address_space_operat
    .writepage = shmem_writepage,
    .set_page_dirty = __set_page_dirty_no_writeback,
    #ifdef CONFIG_TMPFS
    - .prepare_write = shmem_prepare_write,
    - .commit_write = simple_commit_write,
    + .write_begin = shmem_write_begin,
    + .write_end = simple_write_end,
    #endif
    .migratepage = migrate_page,
    };
    Index: linux-2.6/fs/configfs/inode.c
    ===================================================================
    --- linux-2.6.orig/fs/configfs/inode.c
    +++ linux-2.6/fs/configfs/inode.c
    @@ -40,8 +40,8 @@ extern struct super_block * configfs_sb;

    static const struct address_space_operations configfs_aops = {
    .readpage = simple_readpage,
    - .prepare_write = simple_prepare_write,
    - .commit_write = simple_commit_write
    + .write_begin = simple_write_begin,
    + .write_end = simple_write_end,
    };

    static struct backing_dev_info configfs_backing_dev_info = {
    Index: linux-2.6/fs/sysfs/inode.c
    ===================================================================
    --- linux-2.6.orig/fs/sysfs/inode.c
    +++ linux-2.6/fs/sysfs/inode.c
    @@ -20,8 +20,8 @@ extern struct super_block * sysfs_sb;

    static const struct address_space_operations sysfs_aops = {
    .readpage = simple_readpage,
    - .prepare_write = simple_prepare_write,
    - .commit_write = simple_commit_write
    + .write_begin = simple_write_begin,
    + .write_end = simple_write_end,
    };

    static struct backing_dev_info sysfs_backing_dev_info = {
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2007-03-14 14:43    [W:0.021 / U:30.300 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site