提交 2ddddf3e 编写于 作者: H Heiko Carstens 提交者: Martin Schwidefsky

[S390] Enable guest page hinting by default.

Get rid of the PAGE_STATES config option and enable guest page hinting
by default.
It can be disabled by specifying "cmma=off" at the command line.
Signed-off-by: NHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: NMartin Schwidefsky <schwidefsky@de.ibm.com>
上级 5dd1d2ec
...@@ -480,13 +480,6 @@ config CMM_IUCV ...@@ -480,13 +480,6 @@ config CMM_IUCV
Select this option to enable the special message interface to Select this option to enable the special message interface to
the cooperative memory management. the cooperative memory management.
config PAGE_STATES
bool "Unused page notification"
help
This enables the notification of unused pages to the
hypervisor. The ESSA instruction is used to do the states
changes between a page that has content and the unused state.
config APPLDATA_BASE config APPLDATA_BASE
bool "Linux - VM Monitor Stream, base infrastructure" bool "Linux - VM Monitor Stream, base infrastructure"
depends on PROC_FS depends on PROC_FS
......
...@@ -125,8 +125,6 @@ page_get_storage_key(unsigned long addr) ...@@ -125,8 +125,6 @@ page_get_storage_key(unsigned long addr)
return skey; return skey;
} }
#ifdef CONFIG_PAGE_STATES
struct page; struct page;
void arch_free_page(struct page *page, int order); void arch_free_page(struct page *page, int order);
void arch_alloc_page(struct page *page, int order); void arch_alloc_page(struct page *page, int order);
...@@ -134,8 +132,6 @@ void arch_alloc_page(struct page *page, int order); ...@@ -134,8 +132,6 @@ void arch_alloc_page(struct page *page, int order);
#define HAVE_ARCH_FREE_PAGE #define HAVE_ARCH_FREE_PAGE
#define HAVE_ARCH_ALLOC_PAGE #define HAVE_ARCH_ALLOC_PAGE
#endif
#endif /* !__ASSEMBLY__ */ #endif /* !__ASSEMBLY__ */
#define __PAGE_OFFSET 0x0UL #define __PAGE_OFFSET 0x0UL
......
...@@ -109,11 +109,7 @@ extern void pfault_fini(void); ...@@ -109,11 +109,7 @@ extern void pfault_fini(void);
#define pfault_fini() do { } while (0) #define pfault_fini() do { } while (0)
#endif /* CONFIG_PFAULT */ #endif /* CONFIG_PFAULT */
#ifdef CONFIG_PAGE_STATES
extern void cmma_init(void); extern void cmma_init(void);
#else
static inline void cmma_init(void) { }
#endif
#define finish_arch_switch(prev) do { \ #define finish_arch_switch(prev) do { \
set_fs(current->thread.mm_segment); \ set_fs(current->thread.mm_segment); \
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
# Makefile for the linux s390-specific parts of the memory manager. # Makefile for the linux s390-specific parts of the memory manager.
# #
obj-y := init.o fault.o extmem.o mmap.o vmem.o pgtable.o maccess.o obj-y := init.o fault.o extmem.o mmap.o vmem.o pgtable.o maccess.o \
page-states.o
obj-$(CONFIG_CMM) += cmm.o obj-$(CONFIG_CMM) += cmm.o
obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
obj-$(CONFIG_PAGE_STATES) += page-states.o
/* /*
* arch/s390/mm/page-states.c
*
* Copyright IBM Corp. 2008 * Copyright IBM Corp. 2008
* *
* Guest page hinting for unused pages. * Guest page hinting for unused pages.
...@@ -17,11 +15,12 @@ ...@@ -17,11 +15,12 @@
#define ESSA_SET_STABLE 1 #define ESSA_SET_STABLE 1
#define ESSA_SET_UNUSED 2 #define ESSA_SET_UNUSED 2
static int cmma_flag; static int cmma_flag = 1;
static int __init cmma(char *str) static int __init cmma(char *str)
{ {
char *parm; char *parm;
parm = strstrip(str); parm = strstrip(str);
if (strcmp(parm, "yes") == 0 || strcmp(parm, "on") == 0) { if (strcmp(parm, "yes") == 0 || strcmp(parm, "on") == 0) {
cmma_flag = 1; cmma_flag = 1;
...@@ -32,7 +31,6 @@ static int __init cmma(char *str) ...@@ -32,7 +31,6 @@ static int __init cmma(char *str)
return 1; return 1;
return 0; return 0;
} }
__setup("cmma=", cmma); __setup("cmma=", cmma);
void __init cmma_init(void) void __init cmma_init(void)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册