]> git.kernelconcepts.de Git - karo-tx-linux.git/blob - drivers/staging/zcache/Kconfig
2da6cc444c7e50d4758ba84d36c9e9026699871e
[karo-tx-linux.git] / drivers / staging / zcache / Kconfig
1 config ZCACHE
2         bool "Dynamic compression of swap pages and clean pagecache pages"
3         depends on CRYPTO=y && SWAP=y && CLEANCACHE && FRONTSWAP
4         select CRYPTO_LZO
5         default n
6         help
7           Zcache doubles RAM efficiency while providing a significant
8           performance boosts on many workloads.  Zcache uses
9           compression and an in-kernel implementation of transcendent
10           memory to store clean page cache pages and swap in RAM,
11           providing a noticeable reduction in disk I/O.
12
13 config ZCACHE_DEBUG
14         bool "Enable debug statistics"
15         depends on DEBUG_FS && ZCACHE
16         default n
17         help
18           This is used to provide an debugfs directory with counters of
19           how zcache is doing. You probably want to set this to 'N'.
20
21 config RAMSTER
22         bool "Cross-machine RAM capacity sharing, aka peer-to-peer tmem"
23         depends on CONFIGFS_FS=y && SYSFS=y && !HIGHMEM && ZCACHE=y
24         depends on NET
25         # must ensure struct page is 8-byte aligned
26         select HAVE_ALIGNED_STRUCT_PAGE if !64_BIT
27         default n
28         help
29           RAMster allows RAM on other machines in a cluster to be utilized
30           dynamically and symmetrically instead of swapping to a local swap
31           disk, thus improving performance on memory-constrained workloads
32           while minimizing total RAM across the cluster.  RAMster, like
33           zcache2, compresses swap pages into local RAM, but then remotifies
34           the compressed pages to another node in the RAMster cluster.
35
36 # Depends on not-yet-upstreamed mm patches to export end_swap_bio_write and
37 # __add_to_swap_cache, and implement __swap_writepage (which is swap_writepage
38 # without the frontswap call. When these are in-tree, the dependency on
39 # BROKEN can be removed
40 config ZCACHE_WRITEBACK
41         bool "Allow compressed swap pages to be writtenback to swap disk"
42         depends on ZCACHE=y && BROKEN
43         default n
44         help
45           Zcache caches compressed swap pages (and other data) in RAM which
46           often improves performance by avoiding I/O's due to swapping.
47           In some workloads with very long-lived large processes, it can
48           instead reduce performance.  Writeback decompresses zcache-compressed
49           pages (in LRU order) when under memory pressure and writes them to
50           the backing swap disk to ameliorate this problem.  Policy driving
51           writeback is still under development.