RE: [PATCH v11 35/37] x86/syscall: Split IDT syscall setup code into idt_syscall_init()

From: Li, Xin3
Date: Mon Sep 25 2023 - 13:56:56 EST


> >diff --git a/arch/x86/kernel/cpu/common.c
> >b/arch/x86/kernel/cpu/common.c index 20bbedbf6dcb..2ee4e7b597a3 100644
> >--- a/arch/x86/kernel/cpu/common.c
> >+++ b/arch/x86/kernel/cpu/common.c
> >@@ -2071,10 +2071,8 @@ static void wrmsrl_cstar(unsigned long val)
> > wrmsrl(MSR_CSTAR, val);
> > }
> >
> >-/* May not be marked __init: used by software suspend */ -void
> >syscall_init(void)
> >+static inline void idt_syscall_init(void)
> > {
> >- wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
> > wrmsrl(MSR_LSTAR, (unsigned long)entry_SYSCALL_64);
> >
> > if (ia32_enabled()) {
> >@@ -2108,6 +2106,15 @@ void syscall_init(void)
> > X86_EFLAGS_AC|X86_EFLAGS_ID);
> > }
> >
> >+/* May not be marked __init: used by software suspend */ void
> >+syscall_init(void) {
> >+ /* The default user and kernel segments */
> >+ wrmsr(MSR_STAR, 0, (__USER32_CS << 16) | __KERNEL_CS);
> >+
> >+ idt_syscall_init();
> >+}
> >+
> > #else /* CONFIG_X86_64 */
> >
> > #ifdef CONFIG_STACKPROTECTOR
>
> Am I missing something, or is this patch a noop?

Yes, this is a noop, just a cleanup patch w/o functionality change.