lkml.org 
[lkml]   [2007]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[PATCH] update Documentation/filesystems/vfs.txt (second part)
    ---
    From: Borislav Petkov <bbpetkov@yahoo.de>

    Update the rest of Documentation/filesystems/vfs.txt

    Signed-off-by: Borislav Petkov <bbpetkov@yahoo.de>

    --

    Index: linux-2.6.22-rc6/Documentation/filesystems/vfs.txt
    ===================================================================
    --- linux-2.6.22-rc6/Documentation/filesystems/vfs.txt.orig 2007-07-01 08:47:29.000000000 +0200
    +++ linux-2.6.22-rc6/Documentation/filesystems/vfs.txt 2007-07-01 08:47:48.000000000 +0200
    @@ -193,7 +193,7 @@
    -----------------------

    This describes how the VFS can manipulate the superblock of your
    -filesystem. As of kernel 2.6.13, the following members are defined:
    +filesystem. As of kernel 2.6.22, the following members are defined:

    struct super_operations {
    struct inode *(*alloc_inode)(struct super_block *sb);
    @@ -216,8 +216,6 @@
    void (*clear_inode) (struct inode *);
    void (*umount_begin) (struct super_block *);

    - void (*sync_inodes) (struct super_block *sb,
    - struct writeback_control *wbc);
    int (*show_options)(struct seq_file *, struct vfsmount *);

    ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
    @@ -300,9 +298,6 @@

    umount_begin: called when the VFS is unmounting a filesystem.

    - sync_inodes: called when the VFS is writing out dirty data associated with
    - a superblock.
    -
    show_options: called by the VFS to show mount options for /proc/<pid>/mounts.

    quota_read: called by the VFS to read from filesystem quota file.
    @@ -324,7 +319,7 @@
    -----------------------

    This describes how the VFS can manipulate an inode in your
    -filesystem. As of kernel 2.6.13, the following members are defined:
    +filesystem. As of kernel 2.6.22, the following members are defined:

    struct inode_operations {
    int (*create) (struct inode *,struct dentry *,int, struct nameidata *);
    @@ -348,6 +343,7 @@
    ssize_t (*getxattr) (struct dentry *, const char *, void *, size_t);
    ssize_t (*listxattr) (struct dentry *, char *, size_t);
    int (*removexattr) (struct dentry *, const char *);
    + void (*truncate_range)(struct inode *, loff_t, loff_t);
    };

    Again, all methods are called without any locks being held, unless
    @@ -444,6 +440,9 @@
    removexattr: called by the VFS to remove an extended attribute from
    a file. This method is called by removexattr(2) system call.

    + truncate_range: a method provided by the underlying filesystem to truncate a
    + range of blocks , i.e. punch a hole somewhere in a file.
    +

    The Address Space Object
    ========================
    @@ -522,7 +521,7 @@
    -------------------------------

    This describes how the VFS can manipulate mapping of a file to page cache in
    -your filesystem. As of kernel 2.6.16, the following members are defined:
    +your filesystem. As of kernel 2.6.22, the following members are defined:

    struct address_space_operations {
    int (*writepage)(struct page *page, struct writeback_control *wbc);
    @@ -543,6 +542,7 @@
    int);
    /* migrate the contents of a page to the specified target */
    int (*migratepage) (struct page *, struct page *);
    + int (*launder_page) (struct page *);
    };

    writepage: called by the VM to write a dirty page to backing store.
    @@ -689,6 +689,10 @@
    transfer any private data across and update any references
    that it has to the page.

    + launder_page: Called before freeing a page - it writes back the dirty page. To
    + prevent redirtying the page, it is kept locked during the whole
    + operation.
    +
    The File Object
    ===============

    @@ -699,9 +703,10 @@
    ----------------------

    This describes how the VFS can manipulate an open file. As of kernel
    -2.6.17, the following members are defined:
    +2.6.22, the following members are defined:

    struct file_operations {
    + struct module *owner;
    loff_t (*llseek) (struct file *, loff_t, int);
    ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);
    ssize_t (*write) (struct file *, const char __user *, size_t, loff_t *);
    @@ -728,10 +733,8 @@
    int (*check_flags)(int);
    int (*dir_notify)(struct file *filp, unsigned long arg);
    int (*flock) (struct file *, int, struct file_lock *);
    - ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, size_t, unsigned
    -int);
    - ssize_t (*splice_read)(struct file *, struct pipe_inode_info *, size_t, unsigned
    -int);
    + ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, size_t, unsigned int);
    + ssize_t (*splice_read)(struct file *, struct pipe_inode_info *, size_t, unsigned int);
    };

    Again, all methods are called without any locks being held, unless
    --
    Regards/Gruß,
    Boris.
    -
    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-07-01 09:03    [W:0.028 / U:1.500 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site