lkml.org 
[lkml]   [2012]   [Jan]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH 0/5] staging: zsmalloc: memory allocator for compressed pages
Date
This patchset introduces a new memory allocation library named
zsmalloc. zsmalloc was designed to fulfill the needs
of users where:
1) Memory is constrained, preventing contiguous page allocations
larger than order 0 and
2) Allocations are all/commonly greater than half a page.

In a generic allocator, an allocation set like this would
cause high fragmentation. The allocations can't span non-
contiguous page boundaries; therefore, the part of the page
unused by each allocation is wasted.

zsmalloc is a slab-based allocator that uses a non-standard
malloc interface, requiring the user to map the allocation
before accessing it. This allows allocations to span two
non-contiguous pages using virtual memory mapping, greatly
reducing fragmentation in the memory pool.

Nitin Gupta (3):
staging: zsmalloc: zsmalloc memory allocation library
staging: zram: replace xvmalloc with zsmalloc
staging: zram: remove xvmalloc

Seth Jennings (2):
staging: add zsmalloc to Kconfig/Makefile
staging: zcache: replace xvmalloc with zsmalloc

drivers/staging/Kconfig | 2 +
drivers/staging/Makefile | 2 +-
drivers/staging/zcache/Kconfig | 2 +-
drivers/staging/zcache/zcache-main.c | 83 ++--
drivers/staging/zram/Kconfig | 6 +-
drivers/staging/zram/Makefile | 1 -
drivers/staging/zram/xvmalloc.c | 510 --------------------
drivers/staging/zram/xvmalloc.h | 30 --
drivers/staging/zram/xvmalloc_int.h | 95 ----
drivers/staging/zram/zram_drv.c | 89 ++--
drivers/staging/zram/zram_drv.h | 10 +-
drivers/staging/zram/zram_sysfs.c | 2 +-
drivers/staging/zsmalloc/Kconfig | 11 +
drivers/staging/zsmalloc/Makefile | 3 +
drivers/staging/zsmalloc/zsmalloc-main.c | 756 ++++++++++++++++++++++++++++++
drivers/staging/zsmalloc/zsmalloc.h | 31 ++
drivers/staging/zsmalloc/zsmalloc_int.h | 126 +++++
17 files changed, 1020 insertions(+), 739 deletions(-)
delete mode 100644 drivers/staging/zram/xvmalloc.c
delete mode 100644 drivers/staging/zram/xvmalloc.h
delete mode 100644 drivers/staging/zram/xvmalloc_int.h
create mode 100644 drivers/staging/zsmalloc/Kconfig
create mode 100644 drivers/staging/zsmalloc/Makefile
create mode 100644 drivers/staging/zsmalloc/zsmalloc-main.c
create mode 100644 drivers/staging/zsmalloc/zsmalloc.h
create mode 100644 drivers/staging/zsmalloc/zsmalloc_int.h
--
1.7.5.4



\
 
 \ /
  Last update: 2012-01-09 23:55    [from the cache]
©2003-2011 Jasper Spaans