Commit b2da7df5 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'x86_urgent_for_v5.18_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull x86 fixes from Borislav Petkov:

 - A fix to disable PCI/MSI[-X] masking for XEN_HVM guests as that is
   solely controlled by the hypervisor

 - A build fix to make the function prototype (__warn()) as visible as
   the definition itself

 - A bunch of objtool annotation fixes which have accumulated over time

 - An ORC unwinder fix to handle bad input gracefully

 - Well, we thought the microcode gets loaded in time in order to
   restore the microcode-emulated MSRs but we thought wrong. So there's
   a fix for that to have the ordering done properly

 - Add new Intel model numbers

 - A spelling fix

* tag 'x86_urgent_for_v5.18_rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
  x86/pci/xen: Disable PCI/MSI[-X] masking for XEN_HVM guests
  bug: Have __warn() prototype defined unconditionally
  x86/Kconfig: fix the spelling of 'becoming' in X86_KERNEL_IBT config
  objtool: Use offstr() to print address of missing ENDBR
  objtool: Print data address for "!ENDBR" data warnings
  x86/xen: Add ANNOTATE_NOENDBR to startup_xen()
  x86/uaccess: Add ENDBR to __put_user_nocheck*()
  x86/retpoline: Add ANNOTATE_NOENDBR for retpolines
  x86/static_call: Add ANNOTATE_NOENDBR to static call trampoline
  objtool: Enable unreachable warnings for CLANG LTO
  x86,objtool: Explicitly mark idtentry_body()s tail REACHABLE
  x86,objtool: Mark cpu_startup_entry() __noreturn
  x86,xen,objtool: Add UNWIND hint
  lib/strn*,objtool: Enforce user_access_begin() rules
  MAINTAINERS: Add x86 unwinding entry
  x86/unwind/orc: Recheck address range after stack info was updated
  x86/cpu: Load microcode during restore_processor_state()
  x86/cpu: Add new Alderlake and Raptorlake CPU model numbers
parents b70ed23c 7e0815b3
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -21443,6 +21443,15 @@ F: arch/x86/include/asm/uv/
F:	arch/x86/kernel/apic/x2apic_uv_x.c
F:	arch/x86/platform/uv/
X86 STACK UNWINDING
M:	Josh Poimboeuf <jpoimboe@redhat.com>
M:	Peter Zijlstra <peterz@infradead.org>
S:	Supported
F:	arch/x86/include/asm/unwind*.h
F:	arch/x86/kernel/dumpstack.c
F:	arch/x86/kernel/stacktrace.c
F:	arch/x86/kernel/unwind_*.c
X86 VDSO
M:	Andy Lutomirski <luto@kernel.org>
L:	linux-kernel@vger.kernel.org
+1 −1
Original line number Diff line number Diff line
@@ -1866,7 +1866,7 @@ config X86_KERNEL_IBT
	  code with them to make this happen.

	  In addition to building the kernel with IBT, seal all functions that
	  are not indirect call targets, avoiding them ever becomming one.
	  are not indirect call targets, avoiding them ever becoming one.

	  This requires LTO like objtool runs and will slow down the build. It
	  does significantly reduce the number of ENDBR instructions in the
+3 −0
Original line number Diff line number Diff line
@@ -337,6 +337,9 @@ SYM_CODE_END(ret_from_fork)

	call	\cfunc

	/* For some configurations \cfunc ends up being a noreturn. */
	REACHABLE

	jmp	error_return
.endm

+3 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@
 *		_G	- parts with extra graphics on
 *		_X	- regular server parts
 *		_D	- micro server parts
 *		_N,_P	- other mobile parts
 *
 *		Historical OPTDIFFs:
 *
@@ -107,8 +108,10 @@

#define INTEL_FAM6_ALDERLAKE		0x97	/* Golden Cove / Gracemont */
#define INTEL_FAM6_ALDERLAKE_L		0x9A	/* Golden Cove / Gracemont */
#define INTEL_FAM6_ALDERLAKE_N		0xBE

#define INTEL_FAM6_RAPTORLAKE		0xB7
#define INTEL_FAM6_RAPTORLAKE_P		0xBA

/* "Small Core" Processors (Atom) */

+2 −0
Original line number Diff line number Diff line
@@ -131,10 +131,12 @@ extern void __init load_ucode_bsp(void);
extern void load_ucode_ap(void);
void reload_early_microcode(void);
extern bool initrd_gone;
void microcode_bsp_resume(void);
#else
static inline void __init load_ucode_bsp(void)			{ }
static inline void load_ucode_ap(void)				{ }
static inline void reload_early_microcode(void)			{ }
static inline void microcode_bsp_resume(void)			{ }
#endif

#endif /* _ASM_X86_MICROCODE_H */
Loading