• Artem Bityutskiy's avatar
    This patch adds new operation to struct super_operations - sync_inodes, · cbf5577a
    Artem Bityutskiy authored
    generic implementaion and changes fs-writeback.c:sync_sb_inodes() to call
    filesystem's sync_inodes if it is defined or generic implementaion otherwise.
    This new operation allows filesystem to decide itself what to flush.
    
    Reiser4 flushes dirty pages on basic of atoms, not of inodes.  sync_sb_inodes
    used to call address space flushing method (writepages) for every dirty inode.
     For reiser4 it caused having to commit atoms unnecessarily often.  This
    turned into substantial slowdown.  Having this method helped to fix that
    problem.
    
    akpm: this patch needs to be chnaged to remove the `sb' arg.
    Signed-off-by: default avatarArtem Bityutskiy <Artem.Bityutskiy@nokia.com>
    Cc: Edward Shishkin <edward.shishkin@gmail.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    cbf5577a
fs-writeback.c 31.7 KB