x86 fix
Linus,
Please pull the latest x86/urgent git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-2023-09-02
# HEAD: 6ea7bb00c1ba180f8bf8320b8d59b532501c5271 selftests/x86: Update map_shadow_stack syscall nr
Fix __NR_map_shadow_stack syscall-renumbering fallout in the x86 self-test code.
[ Arguably the existing code was unnecessarily fragile, and
tooling should have picked up the new syscall number, and a wider fix is being worked on - but meanwhile, let's not have the old syscall number in the kernel tree. ]
Thanks,
Ingo
------------------>
Rick Edgecombe (1):
selftests/x86: Update map_shadow_stack syscall nr
tools/testing/selftests/x86/test_shadow_stack.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
tools/testing/selftests/x86/test_shadow_stack.c +1 -1
@@ -40,7 +40,7 @@* without building the headers. */ #ifndef __NR_map_shadow_stack -#define __NR_map_shadow_stack 452 +#define __NR_map_shadow_stack 453#define SHADOW_STACK_SET_TOKEN (1ULL << 0)
The pull request you sent on Sat, 2 Sep 2023 12:24:30 +0200:
The pull request you sent on Sat, 2 Sep 2023 12:24:30 +0200:
Quoted 1 line
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.gitx86-urgent-2023-09-02
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/fdde6187804782dce49c78d00e04bac6535628c7
Thank you!
Signature · 2 lines
Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/prtracker.html
[GIT PULL] x86 fixes
In reply to Ingo MolnarLinus,
Please pull the latest x86/urgent Git tree from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-2023-09-10
# HEAD: 3d7d72a34e05b23e21bafc8bfb861e73c86b31f3 x86/sgx: Break up long non-preemptible delays in sgx_vepc_release()
Fix preemption delays in the SGX code, remove unnecessarily UAPI-exported code, fix a ld.lld linker (in)compatibility quirk and make the x86 SMP init code a bit more conservative to fix kexec() lockups.
Thanks,
Ingo
------------------>
Jack Wang (1):
x86/sgx: Break up long non-preemptible delays in sgx_vepc_release()
Song Liu (1):
x86/build: Fix linker fill bytes quirk/incompatibility for ld.lld
Thomas Gleixner (1):
x86/smp: Don't send INIT to non-present and non-booted CPUs
Thomas Huth (1):
x86: Remove the arch_calc_vm_prot_bits() macro from the UAPI
arch/x86/include/asm/mman.h | 15 +++++++++++++++ arch/x86/include/uapi/asm/mman.h | 8 -------- arch/x86/kernel/cpu/sgx/virt.c | 3 +++ arch/x86/kernel/smpboot.c | 2 +- arch/x86/kernel/vmlinux.lds.S | 2 +- scripts/headers_install.sh | 1 - 6 files changed, 20 insertions(+), 11 deletions(-) create mode 100644 arch/x86/include/asm/mman.h
arch/x86/include/asm/mman.h new file +15 -0
@@ -0,0 +1,15 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __ASM_MMAN_H__ +#define __ASM_MMAN_H__ + +#ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS +#define arch_calc_vm_prot_bits (prot, key) ( \ + ((key) & 0x1 ? VM_PKEY_BIT0 : 0) | \ + ((key) & 0x2 ? VM_PKEY_BIT1 : 0) | \ + ((key) & 0x4 ? VM_PKEY_BIT2 : 0) | \ + ((key) & 0x8 ? VM_PKEY_BIT3 : 0)) +#endif + +#include <uapi/asm/mman.h> + +#endif /* __ASM_MMAN_H__ */
arch/x86/include/uapi/asm/mman.h +0 -8
@@ -5,14 +5,6 @@#define MAP_32BIT 0x40/* only give out 32bit addresses */ #define MAP_ABOVE4G 0x80/* only map above 4GB */ -#ifdef CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS -#define arch_calc_vm_prot_bits (prot, key) ( \ - ((key) & 0x1 ? VM_PKEY_BIT0 : 0) | \ - ((key) & 0x2 ? VM_PKEY_BIT1 : 0) | \ - ((key) & 0x4 ? VM_PKEY_BIT2 : 0) | \ - ((key) & 0x8 ? VM_PKEY_BIT3 : 0)) -#endif -/* Flags for map_shadow_stack(2) */ #define SHADOW_STACK_SET_TOKEN (1ULL << 0)/* Set up a restore token in the shadow stack */
arch/x86/kernel/cpu/sgx/virt.c +3 -0
@@ -204,6 +204,7 @@ static int sgx_vepc_release(struct inode *inode, struct file *file)continue ;xa_erase (&vepc->page_array, index); +cond_resched (); }/*
@@ -222,6 +223,7 @@ static int sgx_vepc_release(struct inode *inode, struct file *file)list_add_tail (&epc_page->list, &secs_pages);xa_erase (&vepc->page_array, index); +cond_resched (); }/*
@@ -243,6 +245,7 @@ static int sgx_vepc_release(struct inode *inode, struct file *file)if (sgx_vepc_free_page (epc_page))list_add_tail (&epc_page->list, &secs_pages); +cond_resched (); }if (!list_empty (&secs_pages))
arch/x86/kernel/smpboot.c +1 -1
@@ -1250,7 +1250,7 @@ bool smp_park_other_cpus_in_init(void)if (this_cpu)return false; -for_each_present_cpu (cpu) { +for_each_cpu_and (cpu, &cpus_booted_once_mask, cpu_present_mask) {if (cpu == this_cpu)continue ; apicid = apic->cpu_present_to_apicid (cpu);
arch/x86/kernel/vmlinux.lds.S +1 -1
@@ -156,7 +156,7 @@ SECTIONS ALIGN_ENTRY_TEXT_END *(.gnu.warning) - } :text =0xcccc + } :text = 0xcccccccc /* End of text section, which should occupy whole number of pages */ _etext = .;
scripts/headers_install.sh +0 -1
@@ -81,7 +81,6 @@ arch/nios2/include/uapi/asm/swab.h:CONFIG_NIOS2_CI_SWAB_NO arch/nios2/include/uapi/asm/swab.h:CONFIG_NIOS2_CI_SWAB_SUPPORT arch/x86/include/uapi/asm/auxvec.h:CONFIG_IA32_EMULATION arch/x86/include/uapi/asm/auxvec.h:CONFIG_X86_64 -arch/x86/include/uapi/asm/mman.h:CONFIG_X86_INTEL_MEMORY_PROTECTION_KEYS " for c in $configs
Re: [GIT PULL] x86 fixes
The pull request you sent on Sun, 10 Sep 2023 18:26:30 +0200:
The pull request you sent on Sun, 10 Sep 2023 18:26:30 +0200:
Quoted 1 line
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.gitx86-urgent-2023-09-10
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/e56b2b6057996c5f48da518c79d6590f8bfaabf3
Thank you!
Signature · 2 lines
Deet-doot-dot, I am a bot. https://korg.docs.kernel.org/prtracker.html