1. 27 5月, 2011 20 次提交
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 4c171acc
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
        RDMA/cma: Save PID of ID's owner
        RDMA/cma: Add support for netlink statistics export
        RDMA/cma: Pass QP type into rdma_create_id()
        RDMA: Update exported headers list
        RDMA/cma: Export enum cma_state in <rdma/rdma_cm.h>
        RDMA/nes: Add a check for strict_strtoul()
        RDMA/cxgb3: Don't post zero-byte read if endpoint is going away
        RDMA/cxgb4: Use completion objects for event blocking
        IB/srp: Fix integer -> pointer cast warnings
        IB: Add devnode methods to cm_class and umad_class
        IB/mad: Return EPROTONOSUPPORT when an RDMA device lacks the QP required
        IB/uverbs: Add devnode method to set path/mode
        RDMA/ucma: Add .nodename/.mode to tell userspace where to create device node
        RDMA: Add netlink infrastructure
        RDMA: Add error handling to ib_core_init()
      4c171acc
    • L
      Merge branch 'spi/next' of git://git.secretlab.ca/git/linux-2.6 · 20e0ec11
      Linus Torvalds 提交于
      * 'spi/next' of git://git.secretlab.ca/git/linux-2.6:
        spi/amba-pl022: work in polling or interrupt mode if pl022_dma_probe fails
        spi/spi_s3c24xx: Use spi_bitbang_stop instead of spi_unregister_master in s3c24xx_spi_remove
        spi/spi_nuc900: Use spi_bitbang_stop instead of spi_unregister_master in nuc900_spi_remove
        spi/spi_tegra: use spi_unregister_master() instead of spi_master_put()
        spi/spi_sh: use spi_unregister_master instead of spi_master_put in remove path
        spi: Use void pointers for data in simple SPI I/O operations
        spi/pl022: use cpu_relax in the busy loop
        spi/pl022: mark driver non-experimental
        spi/pl022: timeout on polled transfer v2
        spi/dw_spi: improve the interrupt mode with the batch ops
        spi/dw_spi: change poll mode transfer from byte ops to batch ops
        spi/dw_spi: remove the un-necessary flush()
        spi/dw_spi: unify the low level read/write routines
      20e0ec11
    • L
      Merge branch 'omap-for-linus' of... · 829ae273
      Linus Torvalds 提交于
      Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (33 commits)
        OMAP3: PM: Boot message is not an error, and not helpful, remove it
        OMAP3: cpuidle: change the power domains modes determination logic
        OMAP3: cpuidle: code rework for improved readability
        OMAP3: cpuidle: re-organize the C-states data
        OMAP3: clean-up mach specific cpuidle data structures
        OMAP3 cpuidle: remove useless SDP specific timings
        usb: otg: OMAP4430: Powerdown the internal PHY when USB is disabled
        usb: otg: OMAP4430: Fixing the omap4430_phy_init function
        usb: musb: am35x: fix compile error when building am35x
        usb: musb: OMAP4430: Power down the PHY during board init
        omap: drop board-igep0030.c
        omap: igep0020: add support for IGEP3
        omap: igep0020: minor refactoring
        omap: igep0020: name refactoring for future merge with IGEP3
        omap: Remove support for omap2evm
        arm: omap2plus: GPIO cleanup
        omap: musb: introduce default board config
        omap: move detection of NAND CS to common-board-devices
        omap: use common initialization for PMIC i2c bus
        omap: consolidate touch screen initialization among different boards
        ...
      829ae273
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 6ddb4518
      Linus Torvalds 提交于
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc/4xx: Adding PCIe MSI support
        powerpc: Fix irq_free_virt by adjusting bounds before loop
        powerpc/irq: Protect irq_radix_revmap_lookup against irq_free_virt
        powerpc/irq: Check desc in handle_one_irq and expand generic_handle_irq
        powerpc/irq: Always free duplicate IRQ_LEGACY hosts
        powerpc/irq: Remove stale and misleading comment
        powerpc/cell: Rename ipi functions to match current abstractions
        powerpc/cell: Use common smp ipi actions
        Remove unused MSG_ flags in linux/smp.h
        powerpc/pseries: Update MAX_HCALL_OPCODE to reflect page coalescing
        powerpc/oprofile: Handle events that raise an exception without overflowing
        powerpc/ftrace: Implement raw syscall tracepoints on PowerPC
      6ddb4518
    • L
      Fix build with !HUGETLBFS · be93d8cf
      Linus Torvalds 提交于
      I stupidly broke the case of CONFIG_HUGETLBFS=n when doing the
      conversion to vm_flags_t in commit ca16d140 ("mm: don't access
      vm_flags as 'int'").  And my 'allyesconfig' build didn't find it, for
      obvious reasons..
      
      Include <linux/mm_types.h> in <linux/hugetlb.h>.  The problem could have
      been avoided by just turning the hugetlb_file_setup() error wrapper into
      a macro, but mm_types.h is a reasonable include in this file.
      Reported-by: NRichard -rw- Weinberger <richard.weinberger@gmail.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      be93d8cf
    • L
      Merge branch 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2 · a74b81b0
      Linus Torvalds 提交于
      * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (28 commits)
        Ocfs2: Teach local-mounted ocfs2 to handle unwritten_extents correctly.
        ocfs2/dlm: Do not migrate resource to a node that is leaving the domain
        ocfs2/dlm: Add new dlm message DLM_BEGIN_EXIT_DOMAIN_MSG
        Ocfs2/move_extents: Set several trivial constraints for threshold.
        Ocfs2/move_extents: Let defrag handle partial extent moving.
        Ocfs2/move_extents: move/defrag extents within a certain range.
        Ocfs2/move_extents: helper to calculate the defraging length in one run.
        Ocfs2/move_extents: move entire/partial extent.
        Ocfs2/move_extents: helpers to update the group descriptor and global bitmap inode.
        Ocfs2/move_extents: helper to probe a proper region to move in an alloc group.
        Ocfs2/move_extents: helper to validate and adjust moving goal.
        Ocfs2/move_extents: find the victim alloc group, where the given #blk fits.
        Ocfs2/move_extents: defrag a range of extent.
        Ocfs2/move_extents: move a range of extent.
        Ocfs2/move_extents: lock allocators and reserve metadata blocks and data clusters for extents moving.
        Ocfs2/move_extents: Add basic framework and source files for extent moving.
        Ocfs2/move_extents: Adding new ioctl code 'OCFS2_IOC_MOVE_EXT' to ocfs2.
        Ocfs2/refcounttree: Publicize couple of funcs from refcounttree.c
        Ocfs2: Add a new code 'OCFS2_INFO_FREEFRAG' for o2info ioctl.
        Ocfs2: Add a new code 'OCFS2_INFO_FREEINODE' for o2info ioctl.
        ...
      a74b81b0
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem · f8d613e2
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/djm/tmem:
        xen: cleancache shim to Xen Transcendent Memory
        ocfs2: add cleancache support
        ext4: add cleancache support
        btrfs: add cleancache support
        ext3: add cleancache support
        mm/fs: add hooks to support cleancache
        mm: cleancache core ops functions and config
        fs: add field to superblock to support cleancache
        mm/fs: cleancache documentation
      
      Fix up trivial conflict in fs/btrfs/extent_io.c due to includes
      f8d613e2
    • L
      Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs · 8a0599dd
      Linus Torvalds 提交于
      * 'for-linus' of git://oss.sgi.com/xfs/xfs:
        xfs: correctly decrement the extent buffer index in xfs_bmap_del_extent
        xfs: check for valid indices in xfs_iext_get_ext and xfs_iext_idx_to_irec
        xfs: fix up asserts in xfs_iflush_fork
        xfs: do not do pointer arithmetic on extent records
        xfs: do not use unchecked extent indices in xfs_bunmapi
        xfs: do not use unchecked extent indices in xfs_bmapi
        xfs: do not use unchecked extent indices in xfs_bmap_add_extent_*
        xfs: remove if_lastex
        xfs: remove the unused XFS_BMAPI_RSVBLOCKS flag
        xfs: do not discard alloc btree blocks
        xfs: add online discard support
      8a0599dd
    • L
      Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 35806b4f
      Linus Torvalds 提交于
      * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (61 commits)
        jbd2: Add MAINTAINERS entry
        jbd2: fix a potential leak of a journal_head on an error path
        ext4: teach ext4_ext_split to calculate extents efficiently
        ext4: Convert ext4 to new truncate calling convention
        ext4: do not normalize block requests from fallocate()
        ext4: enable "punch hole" functionality
        ext4: add "punch hole" flag to ext4_map_blocks()
        ext4: punch out extents
        ext4: add new function ext4_block_zero_page_range()
        ext4: add flag to ext4_has_free_blocks
        ext4: reserve inodes and feature code for 'quota' feature
        ext4: add support for multiple mount protection
        ext4: ensure f_bfree returned by ext4_statfs() is non-negative
        ext4: protect bb_first_free in ext4_trim_all_free() with group lock
        ext4: only load buddy bitmap in ext4_trim_fs() when it is needed
        jbd2: Fix comment to match the code in jbd2__journal_start()
        ext4: fix waiting and sending of a barrier in ext4_sync_file()
        jbd2: Add function jbd2_trans_will_send_data_barrier()
        jbd2: fix sending of data flush on journal commit
        ext4: fix ext4_ext_fiemap_cb() to handle blocks before request range correctly
        ...
      35806b4f
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6 · 32e51f14
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (25 commits)
        cifs: remove unnecessary dentry_unhash on rmdir/rename_dir
        ocfs2: remove unnecessary dentry_unhash on rmdir/rename_dir
        exofs: remove unnecessary dentry_unhash on rmdir/rename_dir
        nfs: remove unnecessary dentry_unhash on rmdir/rename_dir
        ext2: remove unnecessary dentry_unhash on rmdir/rename_dir
        ext3: remove unnecessary dentry_unhash on rmdir/rename_dir
        ext4: remove unnecessary dentry_unhash on rmdir/rename_dir
        btrfs: remove unnecessary dentry_unhash in rmdir/rename_dir
        ceph: remove unnecessary dentry_unhash calls
        vfs: clean up vfs_rename_other
        vfs: clean up vfs_rename_dir
        vfs: clean up vfs_rmdir
        vfs: fix vfs_rename_dir for FS_RENAME_DOES_D_MOVE filesystems
        libfs: drop unneeded dentry_unhash
        vfs: update dentry_unhash() comment
        vfs: push dentry_unhash on rename_dir into file systems
        vfs: push dentry_unhash on rmdir into file systems
        vfs: remove dget() from dentry_unhash()
        vfs: dentry_unhash immediately prior to rmdir
        vfs: Block mmapped writes while the fs is frozen
        ...
      32e51f14
    • K
      mm: don't access vm_flags as 'int' · ca16d140
      KOSAKI Motohiro 提交于
      The type of vma->vm_flags is 'unsigned long'. Neither 'int' nor
      'unsigned int'. This patch fixes such misuse.
      Signed-off-by: NKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
      [ Changed to use a typedef - we'll extend it to cover more cases
        later, since there has been discussion about making it a 64-bit
        type..                      - Linus ]
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ca16d140
    • D
      xen: cleancache shim to Xen Transcendent Memory · 5bc20fc5
      Dan Magenheimer 提交于
      This patch provides a shim between the kernel-internal cleancache
      API (see Documentation/mm/cleancache.txt) and the Xen Transcendent
      Memory ABI (see http://oss.oracle.com/projects/tmem).
      
      Xen tmem provides "hypervisor RAM" as an ephemeral page-oriented
      pseudo-RAM store for cleancache pages, shared cleancache pages,
      and frontswap pages.  Tmem provides enterprise-quality concurrency,
      full save/restore and live migration support, compression
      and deduplication.
      
      A presentation showing up to 8% faster performance and up to 52%
      reduction in sectors read on a kernel compile workload, despite
      aggressive in-kernel page reclamation ("self-ballooning") can be
      found at:
      
      http://oss.oracle.com/projects/tmem/dist/documentation/presentations/TranscendentMemoryXenSummit2010.pdfSigned-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      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>
      5bc20fc5
    • D
      ocfs2: add cleancache support · 1cfd8bd0
      Dan Magenheimer 提交于
      This eighth patch of eight in this cleancache series "opts-in"
      cleancache for ocfs2.  Clustered filesystems must explicitly enable
      cleancache by calling cleancache_init_shared_fs anytime an instance
      of the filesystem is mounted.  Ocfs2 is currently the only user of
      the clustered filesystem interface but nevertheless, the cleancache
      hooks in the VFS layer are sufficient for ocfs2 including the matching
      cleancache_flush_fs hook which must be called on unmount.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v8: trivial merge conflict update]
      [v5: jeremy@goop.org: simplify init hook and any future fs init changes]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Signed-off-by: NJoel Becker <joel.becker@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Mark Fasheh <mfasheh@suse.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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 Tso <tytso@mit.edu>
      Cc: Nitin Gupta <ngupta@vflare.org>
      1cfd8bd0
    • D
      ext4: add cleancache support · 7abc52c2
      Dan Magenheimer 提交于
      This seventh patch of eight in this cleancache series "opts-in"
      cleancache for ext4.  Filesystems must explicitly enable cleancache
      by calling cleancache_init_fs anytime an instance of the filesystem
      is mounted. For ext4, all other cleancache hooks are in
      the VFS layer including the matching cleancache_flush_fs
      hook which must be called on unmount.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v6-v8: no changes]
      [v5: jeremy@goop.org: simplify init hook and any future fs init changes]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Acked-by: NAndreas Dilger <adilger@sun.com>
      Cc: Ted Ts'o <tytso@mit.edu>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <joel.becker@oracle.com>
      Cc: Nitin Gupta <ngupta@vflare.org>
      7abc52c2
    • D
      btrfs: add cleancache support · 90a887c9
      Dan Magenheimer 提交于
      This sixth patch of eight in this cleancache series "opts-in"
      cleancache for btrfs.  Filesystems must explicitly enable
      cleancache by calling cleancache_init_fs anytime an instance
      of the filesystem is mounted.  Btrfs uses its own readpage
      which must be hooked, but all other cleancache hooks are in
      the VFS layer including the matching cleancache_flush_fs hook
      which must be called on unmount.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v6-v8: no changes]
      [v5: jeremy@goop.org: simplify init hook and any future fs init changes]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Signed-off-by: NChris Mason <chris.mason@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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: 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>
      90a887c9
    • D
      ext3: add cleancache support · d71bc6db
      Dan Magenheimer 提交于
      This fifth patch of eight in this cleancache series "opts-in"
      cleancache for ext3.  Filesystems must explicitly enable
      cleancache by calling cleancache_init_fs anytime an instance
      of the filesystem is mounted. For ext3, all other cleancache
      hooks are in the VFS layer including the matching cleancache_flush_fs
      hook which must be called on unmount.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v6-v8: no changes]
      [v5: jeremy@goop.org: simplify init hook and any future fs init changes]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Acked-by: NAndreas Dilger <adilger@sun.com>
      Cc: Ted Ts'o <tytso@mit.edu>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <joel.becker@oracle.com>
      Cc: Nitin Gupta <ngupta@vflare.org>
      d71bc6db
    • D
      mm/fs: add hooks to support cleancache · c515e1fd
      Dan Magenheimer 提交于
      This fourth patch of eight in this cleancache series provides the
      core hooks in VFS for: initializing cleancache per filesystem;
      capturing clean pages reclaimed by page cache; attempting to get
      pages from cleancache before filesystem read; and ensuring coherency
      between pagecache, disk, and cleancache.  Note that the placement
      of these hooks was stable from 2.6.18 to 2.6.38; a minor semantic
      change was required due to a patchset in 2.6.39.
      
      All hooks become no-ops if CONFIG_CLEANCACHE is unset, or become
      a check of a boolean global if CONFIG_CLEANCACHE is set but no
      cleancache "backend" has claimed cleancache_ops.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v8: minchan.kim@gmail.com: adapt to new remove_from_page_cache function]
      Signed-off-by: NChris Mason <chris.mason@oracle.com>
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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: 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>
      c515e1fd
    • D
      mm: cleancache core ops functions and config · 077b1f83
      Dan Magenheimer 提交于
      This third patch of eight in this cleancache series provides
      the core code for cleancache that interfaces between the hooks in
      VFS and individual filesystems and a cleancache backend.  It also
      includes build and config patches.
      
      Two new files are added: mm/cleancache.c and include/linux/cleancache.h.
      
      Note that CONFIG_CLEANCACHE can default to on; in systems that do
      not provide a cleancache backend, all hooks devolve to a simple
      check of a global enable flag, so performance impact should
      be negligible but can be reduced to zero impact if config'ed off.
      However for this first commit, it defaults to off.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      Credits: Cleancache_ops design derived from Jeremy Fitzhardinge
      design for tmem
      
      [v8: dan.magenheimer@oracle.com: fix exportfs call affecting btrfs]
      [v8: akpm@linux-foundation.org: use static inline function, not macro]
      [v7: dan.magenheimer@oracle.com: cleanup sysfs and remove cleancache prefix]
      [v6: JBeulich@novell.com: robustly handle buggy fs encode_fh actor definition]
      [v5: jeremy@goop.org: clean up global usage and static var names]
      [v5: jeremy@goop.org: simplify init hook and any future fs init changes]
      [v5: hch@infradead.org: cleaner non-global interface for ops registration]
      [v4: adilger@sun.com: interface must support exportfs FS's]
      [v4: hch@infradead.org: interface must support 64-bit FS on 32-bit kernel]
      [v3: akpm@linux-foundation.org: use one ops struct to avoid pointer hops]
      [v3: akpm@linux-foundation.org: document and ensure PageLocked reqts are met]
      [v3: ngupta@vflare.org: fix success/fail codes, change funcs to void]
      [v2: viro@ZenIV.linux.org.uk: use sane types]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Acked-by: NAl Viro <viro@ZenIV.linux.org.uk>
      Acked-by: NAndrew Morton <akpm@linux-foundation.org>
      Acked-by: NNitin Gupta <ngupta@vflare.org>
      Acked-by: NMinchan Kim <minchan.kim@gmail.com>
      Acked-by: NAndreas Dilger <adilger@sun.com>
      Acked-by: NJan Beulich <JBeulich@novell.com>
      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: Chris Mason <chris.mason@oracle.com>
      Cc: Ted Ts'o <tytso@mit.edu>
      Cc: Mark Fasheh <mfasheh@suse.com>
      Cc: Joel Becker <joel.becker@oracle.com>
      077b1f83
    • D
      fs: add field to superblock to support cleancache · 9fdfdcf1
      Dan Magenheimer 提交于
      This second patch of eight in this cleancache series adds a field to
      the generic superblock to squirrel away a pool identifier that is
      dynamically provided by cleancache-enabled filesystems at mount time
      to uniquely identify files and pages belonging to this mounted filesystem.
      
      Details and a FAQ can be found in Documentation/vm/cleancache.txt
      
      [v8: trivial merge conflict update]
      Signed-off-by: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      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>
      9fdfdcf1
    • D
      mm/fs: cleancache documentation · 4fe4746a
      Dan Magenheimer 提交于
      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: NDan Magenheimer <dan.magenheimer@oracle.com>
      Reviewed-by: NJeremy Fitzhardinge <jeremy@goop.org>
      Reviewed-by: NKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
      Acked-by: NAndrew Morton <akpm@linux-foundation.org>
      Acked-by: NRandy 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>
      4fe4746a
  2. 26 5月, 2011 20 次提交