2018-07-02 10:02:53

by Jürgen Groß

[permalink] [raw]
Subject: [PATCH] xen: remove global bit from __default_kernel_pte_mask for pv guests

When removing the global bit from __supported_pte_mask do the same for
__default_kernel_pte_mask in order to avoid the WARN_ONCE() in
check_pgprot() when setting a kernel pte before having called
init_mem_mapping().

Cc: <[email protected]> # 4.17
Reported-by: Michael Young <[email protected]>
Signed-off-by: Juergen Gross <[email protected]>
---
arch/x86/xen/enlighten_pv.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/x86/xen/enlighten_pv.c b/arch/x86/xen/enlighten_pv.c
index 0f4cd9e5bed4..cf7b13d3e911 100644
--- a/arch/x86/xen/enlighten_pv.c
+++ b/arch/x86/xen/enlighten_pv.c
@@ -1230,6 +1230,7 @@ asmlinkage __visible void __init xen_start_kernel(void)

/* Prevent unwanted bits from being set in PTEs. */
__supported_pte_mask &= ~_PAGE_GLOBAL;
+ __default_kernel_pte_mask &= ~_PAGE_GLOBAL;

/*
* Prevent page tables from being allocated in highmem, even
--
2.13.7



2018-07-10 22:29:05

by Boris Ostrovsky

[permalink] [raw]
Subject: Re: [PATCH] xen: remove global bit from __default_kernel_pte_mask for pv guests

On 07/02/2018 06:00 AM, Juergen Gross wrote:
> When removing the global bit from __supported_pte_mask do the same for
> __default_kernel_pte_mask in order to avoid the WARN_ONCE() in
> check_pgprot() when setting a kernel pte before having called
> init_mem_mapping().
>
> Cc: <[email protected]> # 4.17
> Reported-by: Michael Young <[email protected]>
> Signed-off-by: Juergen Gross <[email protected]>

Reviewed-by: Boris Ostrovsky <[email protected]>