linux/arch
Ard Biesheuvel 75fbef0a8b x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd
The following commit:

  15f003d207 ("x86/mm/pat: Don't implicitly allow _PAGE_RW in kernel_map_pages_in_pgd()")

modified kernel_map_pages_in_pgd() to manage writable permissions
of memory mappings in the EFI page table in a different way, but
in the process, it removed the ability to clear NX attributes from
read-only mappings, by clobbering the clear mask if _PAGE_RW is not
being requested.

Failure to remove the NX attribute from read-only mappings is
unlikely to be a security issue, but it does prevent us from
tightening the permissions in the EFI page tables going forward,
so let's fix it now.

Fixes: 15f003d207 ("x86/mm/pat: Don't implicitly allow _PAGE_RW in kernel_map_pages_in_pgd()
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20200113172245.27925-5-ardb@kernel.org
2020-01-20 08:13:00 +01:00
..
alpha mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
arc Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
arm Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
arm64 Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
c6x mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
csky mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
h8300 mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
hexagon Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
ia64 Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
m68k mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
microblaze mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
mips Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
nds32 Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
nios2 Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
openrisc mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
parisc Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
powerpc Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
riscv Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
s390 Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
sh Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
sparc Merge branch 'x86/mm' into efi/core, to pick up dependencies 2020-01-10 18:53:14 +01:00
um Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
unicore32 mm/vmalloc: Add empty <asm/vmalloc.h> headers and use them from <linux/vmalloc.h> 2019-12-10 10:12:55 +01:00
x86 x86/mm: Fix NX bit clearing issue in kernel_map_pages_in_pgd 2020-01-20 08:13:00 +01:00
xtensa Linux 5.5-rc7 2020-01-20 08:05:16 +01:00
.gitignore
Kconfig arch/Kconfig: fix indentation 2019-12-04 19:44:12 -08:00