• Dan Magenheimer's avatar
    mm/fs: cleancache documentation · 4fe4746a
    Dan Magenheimer authored
    This patchset introduces cleancache, an optional new feature exposed
    by the VFS layer that potentially dramatically increases page cache
    effectiveness for many workloads in many environments at a negligible
    cost.  It does this by providing an interface to transcendent memory,
    which is memory/storage that is not otherwise visible to and/or directly
    addressable by the kernel.
    Instead of being discarded, hooks in the reclaim code "put" clean
    pages to cleancache.  Filesystems that "opt-in" may "get" pages
    from cleancache that were previously put, but pages in cleancache are
    "ephemeral", meaning they may disappear at any time. And the size
    of cleancache is entirely dynamic and unknowable to the kernel.
    Filesystems currently supported by this patchset include ext3, ext4,
    btrfs, and ocfs2.  Other filesystems (especially those built entirely
    on VFS) should be easy to add, but should first be thoroughly tested to
    ensure coherency.
    Details and a FAQ are provided in Documentation/vm/cleancache.txt
    This first patch of eight in this cleancache series only adds two
    new documentation files.
    [v8: minor documentation changes by author]
    [v3: akpm@linux-foundation.org: document sysfs API]
    [v3: hch@infradead.org: move detailed description to Documentation/vm]
    Signed-off-by: default avatarDan Magenheimer <dan.magenheimer@oracle.com>
    Reviewed-by: default avatarJeremy Fitzhardinge <jeremy@goop.org>
    Reviewed-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Acked-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Acked-by: default avatarRandy Dunlap <randy.dunlap@oracle.com>
    Cc: Al Viro <viro@ZenIV.linux.org.uk>
    Cc: Matthew Wilcox <matthew@wil.cx>
    Cc: Nick Piggin <npiggin@kernel.dk>
    Cc: Mel Gorman <mel@csn.ul.ie>
    Cc: Rik Van Riel <riel@redhat.com>
    Cc: Jan Beulich <JBeulich@novell.com>
    Cc: Chris Mason <chris.mason@oracle.com>
    Cc: Andreas Dilger <adilger@sun.com>
    Cc: Ted Ts'o <tytso@mit.edu>
    Cc: Mark Fasheh <mfasheh@suse.com>
    Cc: Joel Becker <joel.becker@oracle.com>
    Cc: Nitin Gupta <ngupta@vflare.org>