[S390] Enable guest page hinting by default.
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Fri, 11 Sep 2009 08:29:01 +0000 (10:29 +0200)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Fri, 11 Sep 2009 08:29:54 +0000 (10:29 +0200)
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: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/Kconfig
arch/s390/include/asm/page.h
arch/s390/include/asm/system.h
arch/s390/mm/Makefile
arch/s390/mm/page-states.c

index 47836b945d03446b959aa38bf5e80d532eebf37d..e030e86ff6a3196cd4fb90f6158845d0ec46116b 100644 (file)
@@ -480,13 +480,6 @@ config CMM_IUCV
          Select this option to enable the special message interface to
          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
        bool "Linux - VM Monitor Stream, base infrastructure"
        depends on PROC_FS
index 3e3594d01f8315f6c5545fd40dbe0d1d521f3de2..5e9daf5d7f223b744dca0993c1e09f08877fbcf9 100644 (file)
@@ -125,8 +125,6 @@ page_get_storage_key(unsigned long addr)
        return skey;
 }
 
-#ifdef CONFIG_PAGE_STATES
-
 struct page;
 void arch_free_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);
 #define HAVE_ARCH_FREE_PAGE
 #define HAVE_ARCH_ALLOC_PAGE
 
-#endif
-
 #endif /* !__ASSEMBLY__ */
 
 #define __PAGE_OFFSET           0x0UL
index 4fb83c1cdb77a206d72136830107e912f83a1dd1..379661d2f81ac9ce68863ec48e7c85e1244177ec 100644 (file)
@@ -109,11 +109,7 @@ extern void pfault_fini(void);
 #define pfault_fini()          do { } while (0)
 #endif /* CONFIG_PFAULT */
 
-#ifdef CONFIG_PAGE_STATES
 extern void cmma_init(void);
-#else
-static inline void cmma_init(void) { }
-#endif
 
 #define finish_arch_switch(prev) do {                                       \
        set_fs(current->thread.mm_segment);                                  \
index db05661ac8954269a36d796b548e7bb0a40f126c..eec05448441922adf4c081b719f7cd5672e402d6 100644 (file)
@@ -2,7 +2,7 @@
 # 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_HUGETLB_PAGE) += hugetlbpage.o
-obj-$(CONFIG_PAGE_STATES) += page-states.o
index fc0ad73ffd902ec243bbb06de79eff7428132d95..f92ec203ad92ee58e92f293026266e0d314c4604 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * arch/s390/mm/page-states.c
- *
  * Copyright IBM Corp. 2008
  *
  * Guest page hinting for unused pages.
 #define ESSA_SET_STABLE                1
 #define ESSA_SET_UNUSED                2
 
-static int cmma_flag;
+static int cmma_flag = 1;
 
 static int __init cmma(char *str)
 {
        char *parm;
+
        parm = strstrip(str);
        if (strcmp(parm, "yes") == 0 || strcmp(parm, "on") == 0) {
                cmma_flag = 1;
@@ -32,7 +31,6 @@ static int __init cmma(char *str)
                return 1;
        return 0;
 }
-
 __setup("cmma=", cmma);
 
 void __init cmma_init(void)