1. 24 Feb, 2012 31 commits
  2. 17 Feb, 2012 1 commit
  3. 16 Feb, 2012 4 commits
  4. 15 Feb, 2012 4 commits
    • Greg Kroah-Hartman's avatar
      staging: clean up Greg's email address in some TODO files · 2140dc9c
      Greg Kroah-Hartman authored
      My old email address was in some TODO files, so this fixes that issue.
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      2140dc9c
    • Dan Magenheimer's avatar
      staging: ramster: ramster-specific new files · 83bc7a7c
      Dan Magenheimer authored
      RAMster implements peer-to-peer transcendent memory, allowing a "cluster"
      of kernels to dynamically pool their RAM.
      
      This patch adds new files necessary for ramster support:  The file
      ramster.h declares externs and some pampd bitfield manipulation.  The
      file zcache.h declares some zcache functions that now must be accessed
      from the ramster glue code.  The file r2net.c is the glue between zcache
      and the messaging layer, providing routines called from zcache that
      initiate messages, and routines that handle messages by calling zcache.
      TODO explains future plans for merging.
      Signed-off-by: default avatarDan Magenheimer <dan.magenheimer@oracle.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      83bc7a7c
    • Dan Magenheimer's avatar
      staging: ramster: ramster-specific changes to zcache/tmem · c89126ea
      Dan Magenheimer authored
      RAMster implements peer-to-peer transcendent memory, allowing a "cluster"
      of kernels to dynamically pool their RAM.
      
      This patch incorporates changes transforming zcache to work with
      a remote store.
      
      In tmem.[ch], new "repatriate" (provoke async get) and "localify" (handle
      incoming data resulting from an async get) routines combine with a handful
      of changes to existing pamops interfaces allow the generic tmem code
      to support asynchronous operations.  Also, a new tmem_xhandle struct
      groups together key information that must be passed to remote tmem stores.
      
      Zcache-main.c is augmented with a large amount of ramster-specific code
      to handle remote operations and "foreign" pages on both ends of the
      "remotify" protocol.  New "foreign" pools are auto-created on demand.
      A "selfshrinker" thread periodically repatriates remote persistent pages
      when local memory conditions allow.  For certain operations, a queue is
      necessary to guarantee strict ordering as out-of-order puts/flushes can
      cause strange race conditions.  Pampd pointers now either point to local
      memory OR describe a remote page; to allow the same 64-bits to describe
      either, the LSB is used to differentiate.  Some acrobatics must be performed
      to ensure local memory is available to handle a remote persistent get,
      or deal with the data directly anyway if the malloc failed.  Lots
      of ramster-specific statistics are available via sysfs.
      
      Note: Some debug ifdefs left in for now.
      Signed-off-by: default avatarDan Magenheimer <dan.magenheimer@oracle.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      c89126ea
    • Dan Magenheimer's avatar
      staging: ramster: xvmalloc allocation files · b95e141a
      Dan Magenheimer authored
      RAMster implements peer-to-peer transcendent memory, allowing a "cluster"
      of kernels to dynamically pool their RAM.
      
      Zcache is in the process of converting allocators, from xvmalloc to zsmalloc.
      Further, RAMster V5 testing to date has been done only with xvmalloc.
      To avoid merging problems, a linux-3.2 copy of xvmalloc is incorporated by
      this patch.  Later patches will be able to eliminate xvmalloc and use zsmalloc.
      Signed-off-by: default avatarDan Magenheimer <dan.magenheimer@oracle.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      b95e141a