lkml.org 
[lkml]   [2010]   [May]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v21 042/100] c/r: add generic '->checkpoint' f_op to ext fses
    Date
    From: Dave Hansen <dave@linux.vnet.ibm.com>

    This marks ext[234] as being checkpointable. There will be many
    more to do this to, but this is a start.

    Changelog[ckpt-v21]:
    - Put file_ops->checkpoint under CONFIG_CHECKPOINT
    Changelog[ckpt-v19-rc3]:
    - Rebase to kernel 2.6.33 (ext2)
    Changelog[v1]:
    - [Serge Hallyn] Use filemap_checkpoint() in ext4_file_vm_ops

    Cc: linux-ext4@vger.kernel.org
    Cc: linux-fsdevel@vger.kernel.org
    Signed-off-by: Dave Hansen <dave@linux.vnet.ibm.com>
    Signed-off-by: Oren Laadan <orenl@cs.columbia.edu>
    Acked-by: Serge E. Hallyn <serue@us.ibm.com>
    Tested-by: Serge E. Hallyn <serue@us.ibm.com>
    ---
    fs/ext2/dir.c | 3 +++
    fs/ext2/file.c | 6 ++++++
    fs/ext3/dir.c | 3 +++
    fs/ext3/file.c | 3 +++
    fs/ext4/dir.c | 3 +++
    fs/ext4/file.c | 6 ++++++
    6 files changed, 24 insertions(+), 0 deletions(-)

    diff --git a/fs/ext2/dir.c b/fs/ext2/dir.c
    index 7516957..cdcb065 100644
    --- a/fs/ext2/dir.c
    +++ b/fs/ext2/dir.c
    @@ -722,4 +722,7 @@ const struct file_operations ext2_dir_operations = {
    .compat_ioctl = ext2_compat_ioctl,
    #endif
    .fsync = ext2_fsync,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif
    };
    diff --git a/fs/ext2/file.c b/fs/ext2/file.c
    index 5d198d0..975ea9c 100644
    --- a/fs/ext2/file.c
    +++ b/fs/ext2/file.c
    @@ -76,6 +76,9 @@ const struct file_operations ext2_file_operations = {
    .fsync = ext2_fsync,
    .splice_read = generic_file_splice_read,
    .splice_write = generic_file_splice_write,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif /* CONFIG_CHECKPOINT */
    };

    #ifdef CONFIG_EXT2_FS_XIP
    @@ -91,6 +94,9 @@ const struct file_operations ext2_xip_file_operations = {
    .open = dquot_file_open,
    .release = ext2_release_file,
    .fsync = ext2_fsync,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif /* CONFIG_CHECKPOINT */
    };
    #endif

    diff --git a/fs/ext3/dir.c b/fs/ext3/dir.c
    index 373fa90..a4ef201 100644
    --- a/fs/ext3/dir.c
    +++ b/fs/ext3/dir.c
    @@ -48,6 +48,9 @@ const struct file_operations ext3_dir_operations = {
    #endif
    .fsync = ext3_sync_file, /* BKL held */
    .release = ext3_release_dir,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif
    };


    diff --git a/fs/ext3/file.c b/fs/ext3/file.c
    index f55df0e..2cf4ef2 100644
    --- a/fs/ext3/file.c
    +++ b/fs/ext3/file.c
    @@ -68,6 +68,9 @@ const struct file_operations ext3_file_operations = {
    .fsync = ext3_sync_file,
    .splice_read = generic_file_splice_read,
    .splice_write = generic_file_splice_write,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif
    };

    const struct inode_operations ext3_file_inode_operations = {
    diff --git a/fs/ext4/dir.c b/fs/ext4/dir.c
    index 86cb6d8..9681c2f 100644
    --- a/fs/ext4/dir.c
    +++ b/fs/ext4/dir.c
    @@ -48,6 +48,9 @@ const struct file_operations ext4_dir_operations = {
    #endif
    .fsync = ext4_sync_file,
    .release = ext4_release_dir,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif
    };


    diff --git a/fs/ext4/file.c b/fs/ext4/file.c
    index d0776e4..7c7e120 100644
    --- a/fs/ext4/file.c
    +++ b/fs/ext4/file.c
    @@ -85,6 +85,9 @@ ext4_file_write(struct kiocb *iocb, const struct iovec *iov,
    static const struct vm_operations_struct ext4_file_vm_ops = {
    .fault = filemap_fault,
    .page_mkwrite = ext4_page_mkwrite,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = filemap_checkpoint,
    +#endif
    };

    static int ext4_file_mmap(struct file *file, struct vm_area_struct *vma)
    @@ -145,6 +148,9 @@ const struct file_operations ext4_file_operations = {
    .fsync = ext4_sync_file,
    .splice_read = generic_file_splice_read,
    .splice_write = generic_file_splice_write,
    +#ifdef CONFIG_CHECKPOINT
    + .checkpoint = generic_file_checkpoint,
    +#endif
    };

    const struct inode_operations ext4_file_inode_operations = {
    --
    1.6.3.3


    \
     
     \ /
      Last update: 2010-05-01 16:35    [W:0.030 / U:32.744 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site