Merge branch 'x86/urgent' into x86/asm, to pick up dependent fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
commit
49b2410631
3 changed files with 19 additions and 3 deletions
|
@ -509,6 +509,17 @@ END(irq_entries_start)
|
||||||
* tracking that we're in kernel mode.
|
* tracking that we're in kernel mode.
|
||||||
*/
|
*/
|
||||||
SWAPGS
|
SWAPGS
|
||||||
|
|
||||||
|
/*
|
||||||
|
* We need to tell lockdep that IRQs are off. We can't do this until
|
||||||
|
* we fix gsbase, and we should do it before enter_from_user_mode
|
||||||
|
* (which can take locks). Since TRACE_IRQS_OFF idempotent,
|
||||||
|
* the simplest way to handle it is to just call it twice if
|
||||||
|
* we enter from user mode. There's no reason to optimize this since
|
||||||
|
* TRACE_IRQS_OFF is a no-op if lockdep is off.
|
||||||
|
*/
|
||||||
|
TRACE_IRQS_OFF
|
||||||
|
|
||||||
#ifdef CONFIG_CONTEXT_TRACKING
|
#ifdef CONFIG_CONTEXT_TRACKING
|
||||||
call enter_from_user_mode
|
call enter_from_user_mode
|
||||||
#endif
|
#endif
|
||||||
|
@ -1049,12 +1060,18 @@ ENTRY(error_entry)
|
||||||
SWAPGS
|
SWAPGS
|
||||||
|
|
||||||
.Lerror_entry_from_usermode_after_swapgs:
|
.Lerror_entry_from_usermode_after_swapgs:
|
||||||
|
/*
|
||||||
|
* We need to tell lockdep that IRQs are off. We can't do this until
|
||||||
|
* we fix gsbase, and we should do it before enter_from_user_mode
|
||||||
|
* (which can take locks).
|
||||||
|
*/
|
||||||
|
TRACE_IRQS_OFF
|
||||||
#ifdef CONFIG_CONTEXT_TRACKING
|
#ifdef CONFIG_CONTEXT_TRACKING
|
||||||
call enter_from_user_mode
|
call enter_from_user_mode
|
||||||
#endif
|
#endif
|
||||||
|
ret
|
||||||
|
|
||||||
.Lerror_entry_done:
|
.Lerror_entry_done:
|
||||||
|
|
||||||
TRACE_IRQS_OFF
|
TRACE_IRQS_OFF
|
||||||
ret
|
ret
|
||||||
|
|
||||||
|
|
|
@ -698,3 +698,4 @@ int __init microcode_init(void)
|
||||||
return error;
|
return error;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
late_initcall(microcode_init);
|
||||||
|
|
|
@ -1250,8 +1250,6 @@ void __init setup_arch(char **cmdline_p)
|
||||||
if (efi_enabled(EFI_BOOT))
|
if (efi_enabled(EFI_BOOT))
|
||||||
efi_apply_memmap_quirks();
|
efi_apply_memmap_quirks();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
microcode_init();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef CONFIG_X86_32
|
#ifdef CONFIG_X86_32
|
||||||
|
|
Loading…
Reference in a new issue