Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2ddddf3e authored by Heiko Carstens's avatar Heiko Carstens Committed by Martin Schwidefsky
Browse files

[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: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
parent 5dd1d2ec
Loading
Loading
Loading
Loading
+0 −7
Original line number Diff line number Diff line
@@ -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
+0 −4
Original line number Diff line number Diff line
@@ -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
+0 −4
Original line number Diff line number Diff line
@@ -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);				     \
+2 −2
Original line number Diff line number Diff line
@@ -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
+2 −4
Original line number Diff line number Diff line
/*
 * arch/s390/mm/page-states.c
 *
 * Copyright IBM Corp. 2008
 *
 * Guest page hinting for unused pages.
@@ -17,11 +15,12 @@
#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)