diff -Naur linux-2.6.28/mm/Kconfig linux-2.6.28-tmem/mm/Kconfig --- linux-2.6.28/mm/Kconfig 2008-12-24 16:26:37.000000000 -0700 +++ linux-2.6.28-tmem/mm/Kconfig 2009-01-05 16:57:43.000000000 -0700 @@ -222,3 +222,34 @@ config MMU_NOTIFIER bool + +# +# support for transcendent memory +# +config TMEM + bool "Transcendent memory support" + def_bool y + depends on XEN + help + In a virtualized environment, allows unused and underutilized + system physical memory to be made accessible through a narrow + well-defined page-copy-based API. If unsure, say Y. + +config PRECACHE + bool "Cache clean pages in transcendent memory" + def_bool y + depends on TMEM + help + Allows the transcendent memory pool to be used to store clean + page-cache pages which, under some circumstances, will greatly + reduce paging and thus improve performance. If unsure, say Y. + +config PRESWAP + bool "Swap pages to transcendent memory" + def_bool y + depends on TMEM + help + Allows the transcendent memory pool to be used as a pseudo-swap + device which, under some circumstances, will greatly reduce + swapping and thus improve performance. If unsure, say Y. + diff -Naur linux-2.6.28/mm/Makefile linux-2.6.28-tmem/mm/Makefile --- linux-2.6.28/mm/Makefile 2008-12-24 16:26:37.000000000 -0700 +++ linux-2.6.28-tmem/mm/Makefile 2009-01-05 16:57:43.000000000 -0700 @@ -16,6 +16,9 @@ obj-$(CONFIG_PROC_PAGE_MONITOR) += pagewalk.o obj-$(CONFIG_BOUNCE) += bounce.o obj-$(CONFIG_SWAP) += page_io.o swap_state.o swapfile.o thrash.o +obj-$(CONFIG_TMEM) += tmem.o +obj-$(CONFIG_PRESWAP) += preswap.o +obj-$(CONFIG_PRECACHE) += precache.o obj-$(CONFIG_HAS_DMA) += dmapool.o obj-$(CONFIG_HUGETLBFS) += hugetlb.o obj-$(CONFIG_NUMA) += mempolicy.o