1. 23 Apr, 2012 1 commit
  2. 08 Mar, 2012 1 commit
    • Colin Cross's avatar
      staging: android: ram_console: split out persistent ram · c672528a
      Colin Cross authored
      Split ram_console into two halves.
      
      persistent_ram is a set of apis that handle a block of memory
      that does not get erased across a reboot.  It provides functions
      to fill it as a single buffer or a ring buffer, and to extract
      the old data after a reboot.  It handles ecc on the data to
      correct bit errors introduced during reboot.
      
      ram_console is now a small wrapper around persistent_ram that
      feeds console data into the ringbuffer, and exports the old
      data to /proc/last_kmsg after a reboot.
      
      [jstultz: Moved persistent_ram.h to staging dir]
      CC: Greg KH <gregkh@linuxfoundation.org>
      CC: Android Kernel Team <kernel-team@android.com>
      Signed-off-by: default avatarColin Cross <ccross@android.com>
      Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      c672528a
  3. 10 Feb, 2012 1 commit
  4. 08 Feb, 2012 1 commit
  5. 21 Dec, 2011 1 commit
    • Robert Love's avatar
      ashmem: Anonymous shared memory subsystem · 11980c2a
      Robert Love authored
      The anonymous shared memory (ashmem) subsystem provides a
      Unix-y,file-based shared memory interface to user-space. It
      works like anonymous memory (e.g. mmapping fd=0) except if
      you share the file descriptor via the usual means, you will
      share the mapping. The shared memory can be accessed via both
      mmap or file I/O. The backing store is a simple shmem file.
      
      Additionally, ashmem introduces the concept of page pinning.
      Pinned pages (the default) behave like any anonymous memory.
      Unpinned pages are available to the kernel for eviction during
      VM pressure. When repinning the pages, the return value
      instructs user-space as to any eviction. In this manner,
      user-space processes may implement caching and similar
      resource management that efficiently integrates with kernel
      memory management.
      Signed-off-by: default avatarRobert Love <rlove@google.com>
      
      ashmem: Don't install fault handler for private mmaps.
      
      Ashmem is used to create named private heaps. If this heap is backed
      by a tmpfs file it will allocate two pages for every page touched.
      In 2.6.27, the extra page would later be freed, but 2.6.29 does not
      scan anonymous pages when running without swap so the memory is not
      freed while the file is referenced. This change changes the behavior
      of private ashmem mmaps to match /dev/zero instead tmpfs.
      Signed-off-by: default avatarArve Hjønnevåg <arve@android.com>
      
      ashmem: Add common prefix to name reported in /proc/pid/maps
      Signed-off-by: default avatarArve Hjønnevåg <arve@android.com>
      
      ashmem: don't require a page aligned size
      
      This makes ashmem more similar to shmem and mmap, by
      not requiring the specified size to be page aligned,
      instead rounding it internally as needed.
      Signed-off-by: default avatarMarco Nelissen <marcone@android.com>
      [jstultz: Improved commit subject and included patch description
      from rlove. Also moved ashmem files to staging dir, and reworked
      code to avoid touching mm/shmem.c while we're in staging.]
      CC: Brian Swetland <swetland@google.com>
      CC: Colin Cross <ccross@android.com>
      CC: Arve Hjønnevåg <arve@android.com>
      CC: Dima Zavin <dima@android.com>
      CC: Robert Love <rlove@google.com>
      Signed-off-by: default avatarJohn Stultz <john.stultz@linaro.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      11980c2a
  6. 16 Dec, 2011 2 commits
  7. 30 Nov, 2011 1 commit
  8. 11 Dec, 2009 1 commit
  9. 19 Jun, 2009 1 commit
  10. 06 Jan, 2009 7 commits