1// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright IBM Corp. 2008
4 *
5 * Guest page hinting for unused pages.
6 *
7 * Author(s): Martin Schwidefsky <schwidefsky@de.ibm.com>
8 */
9
10#include <linux/mm.h>
11#include <asm/page-states.h>
12#include <asm/sections.h>
13#include <asm/page.h>
14
15int __bootdata_preserved(cmma_flag);
16
17void arch_free_page(struct page *page, int order)
18{
19 if (!cmma_flag)
20 return;
21 __set_page_unused(page_to_virt(page), 1UL << order);
22}
23
24void arch_alloc_page(struct page *page, int order)
25{
26 if (!cmma_flag)
27 return;
28 if (cmma_flag < 2)
29 __set_page_stable_dat(page_to_virt(page), 1UL << order);
30 else
31 __set_page_stable_nodat(page_to_virt(page), 1UL << order);
32}
33

source code of linux/arch/s390/mm/page-states.c