| From foo@baz Wed Jan 3 18:58:12 CET 2018 |
| From: Hugh Dickins <hughd@google.com> |
| Date: Sat, 9 Sep 2017 17:31:18 -0700 |
| Subject: kaiser: name that 0x1000 KAISER_SHADOW_PGD_OFFSET |
| |
| From: Hugh Dickins <hughd@google.com> |
| |
| |
| There's a 0x1000 in various places, which looks better with a name. |
| |
| Signed-off-by: Hugh Dickins <hughd@google.com> |
| Acked-by: Jiri Kosina <jkosina@suse.cz> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| arch/x86/entry/entry_64.S | 4 ++-- |
| arch/x86/include/asm/kaiser.h | 7 +++++-- |
| 2 files changed, 7 insertions(+), 4 deletions(-) |
| |
| --- a/arch/x86/entry/entry_64.S |
| +++ b/arch/x86/entry/entry_64.S |
| @@ -1292,7 +1292,7 @@ ENTRY(nmi) |
| movq %cr3, %rax |
| pushq %rax |
| #ifdef CONFIG_KAISER_REAL_SWITCH |
| - andq $(~0x1000), %rax |
| + andq $(~KAISER_SHADOW_PGD_OFFSET), %rax |
| #endif |
| movq %rax, %cr3 |
| #endif |
| @@ -1535,7 +1535,7 @@ end_repeat_nmi: |
| movq %cr3, %rax |
| pushq %rax |
| #ifdef CONFIG_KAISER_REAL_SWITCH |
| - andq $(~0x1000), %rax |
| + andq $(~KAISER_SHADOW_PGD_OFFSET), %rax |
| #endif |
| movq %rax, %cr3 |
| #endif |
| --- a/arch/x86/include/asm/kaiser.h |
| +++ b/arch/x86/include/asm/kaiser.h |
| @@ -13,13 +13,16 @@ |
| * A minimalistic kernel mapping holds the parts needed to be mapped in user |
| * mode, such as the entry/exit functions of the user space, or the stacks. |
| */ |
| + |
| +#define KAISER_SHADOW_PGD_OFFSET 0x1000 |
| + |
| #ifdef __ASSEMBLY__ |
| #ifdef CONFIG_KAISER |
| |
| .macro _SWITCH_TO_KERNEL_CR3 reg |
| movq %cr3, \reg |
| #ifdef CONFIG_KAISER_REAL_SWITCH |
| -andq $(~0x1000), \reg |
| +andq $(~KAISER_SHADOW_PGD_OFFSET), \reg |
| #endif |
| movq \reg, %cr3 |
| .endm |
| @@ -27,7 +30,7 @@ movq \reg, %cr3 |
| .macro _SWITCH_TO_USER_CR3 reg |
| movq %cr3, \reg |
| #ifdef CONFIG_KAISER_REAL_SWITCH |
| -orq $(0x1000), \reg |
| +orq $(KAISER_SHADOW_PGD_OFFSET), \reg |
| #endif |
| movq \reg, %cr3 |
| .endm |