Linus Torvalds
9591fdb061
Merge tag 'x86_core_for_v6.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
...
Pull more x86 updates from Borislav Petkov:
- Remove a bunch of asm implementing condition flags testing in KVM's
emulator in favor of int3_emulate_jcc() which is written in C
- Replace KVM fastops with C-based stubs which avoids problems with the
fastop infra related to latter not adhering to the C ABI due to their
special calling convention and, more importantly, bypassing compiler
control-flow integrity checking because they're written in asm
- Remove wrongly used static branches and other ugliness accumulated
over time in hyperv's hypercall implementation with a proper static
function call to the correct hypervisor call variant
- Add some fixes and modifications to allow running FRED-enabled
kernels in KVM even on non-FRED hardware
- Add kCFI improvements like validating indirect calls and prepare for
enabling kCFI with GCC. Add cmdline params documentation and other
code cleanups
- Use the single-byte 0xd6 insn as the official #UD single-byte
undefined opcode instruction as agreed upon by both x86 vendors
- Other smaller cleanups and touchups all over the place
* tag 'x86_core_for_v6.18_rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
x86,retpoline: Optimize patch_retpoline()
x86,ibt: Use UDB instead of 0xEA
x86/cfi: Remove __noinitretpoline and __noretpoline
x86/cfi: Add "debug" option to "cfi=" bootparam
x86/cfi: Standardize on common "CFI:" prefix for CFI reports
x86/cfi: Document the "cfi=" bootparam options
x86/traps: Clarify KCFI instruction layout
compiler_types.h: Move __nocfi out of compiler-specific header
objtool: Validate kCFI calls
x86/fred: KVM: VMX: Always use FRED for IRQs when CONFIG_X86_FRED=y
x86/fred: Play nice with invoking asm_fred_entry_from_kvm() on non-FRED hardware
x86/fred: Install system vector handlers even if FRED isn't fully enabled
x86/hyperv: Use direct call to hypercall-page
x86/hyperv: Clean up hv_do_hypercall()
KVM: x86: Remove fastops
KVM: x86: Convert em_salc() to C
KVM: x86: Introduce EM_ASM_3WCL
KVM: x86: Introduce EM_ASM_1SRC2
KVM: x86: Introduce EM_ASM_2CL
KVM: x86: Introduce EM_ASM_2W
...
2025-10-11 11:19:16 -07:00
..
2025-06-30 13:42:11 +03:00
2025-05-16 10:54:47 +02:00
2025-02-21 16:05:00 +01:00
2025-09-01 15:31:34 +02:00
2025-06-20 14:09:50 -04:00
2025-05-31 09:40:40 +02:00
2024-08-14 12:49:35 +02:00
2025-04-18 10:19:26 +02:00
2025-09-08 17:01:36 +02:00
2022-04-07 08:27:54 -07:00
2025-07-24 16:55:11 -07:00
2025-05-16 10:54:47 +02:00
2023-02-13 22:13:12 +01:00
2025-05-13 10:47:10 +02:00
2025-09-01 13:06:08 +02:00
2025-08-31 22:07:35 +02:00
2025-04-13 09:52:42 +02:00
2025-09-08 15:38:06 +02:00
2025-03-21 08:34:28 +01:00
2025-09-08 15:38:06 +02:00
2025-03-04 11:21:40 +01:00
2025-03-19 11:26:58 +01:00
2025-03-19 11:26:58 +01:00
2023-08-30 10:11:16 +02:00
2025-02-28 10:18:26 +01:00
2025-10-11 10:51:14 -07:00
2025-09-03 18:05:42 +02:00
2023-03-30 12:58:51 -06:00
2025-09-04 21:59:09 +02:00
2023-06-16 10:15:59 +02:00
2020-10-25 14:51:49 -07:00
2020-06-08 11:05:57 -07:00
2023-10-10 14:38:18 +02:00
2025-06-29 14:24:46 +02:00
2025-10-11 11:19:16 -07:00
2020-08-20 15:45:18 -04:00
2023-01-27 11:19:46 +00:00
2022-10-03 14:03:24 -07:00
2024-07-31 21:46:35 +02:00
2025-09-08 15:38:06 +02:00
2025-09-08 15:38:06 +02:00
2025-09-08 15:38:06 +02:00
2025-04-12 11:13:05 +02:00
2022-05-31 14:10:54 -07:00
2025-03-19 11:17:03 +01:00
2022-12-15 10:37:26 -08:00
2025-03-04 20:29:35 +01:00
2025-03-19 11:47:30 +01:00
2025-10-06 12:37:34 -07:00
2025-03-19 11:47:30 +01:00
2024-03-26 11:14:12 -07:00
2021-06-07 12:14:45 +02:00
2025-03-19 11:47:30 +01:00
2025-06-24 13:15:52 -07:00
2020-05-07 16:06:20 +02:00
2025-03-19 11:47:30 +01:00
2025-02-18 10:15:50 +01:00
2020-06-30 11:59:48 +02:00
2023-08-03 12:08:35 +02:00
2023-02-15 12:35:20 +01:00
2022-07-22 17:24:47 -05:00
2023-05-18 11:56:18 -07:00
2025-03-19 11:47:30 +01:00
2025-02-28 10:18:26 +01:00
2025-01-14 08:35:08 +01:00
2025-04-22 14:24:07 +02:00
2021-01-06 08:40:56 -05:00
2020-11-18 18:02:50 +01:00
2025-08-14 10:37:18 -07:00
2024-04-04 17:01:40 +02:00
2024-08-25 16:07:51 +02:00
2025-03-19 11:47:30 +01:00
2025-08-25 14:46:42 -06:00
2024-05-19 14:36:19 -07:00
2025-03-19 11:47:30 +01:00
2025-05-02 10:23:47 +02:00
2025-04-10 11:58:33 +02:00
2025-03-19 11:47:30 +01:00
2024-11-25 12:11:55 -08:00
2022-04-18 07:21:10 +02:00
2021-10-28 23:25:26 +02:00
2023-01-13 10:07:27 +01:00
2025-03-04 20:30:33 +01:00
2025-03-17 22:06:53 -07:00
2025-01-13 23:07:18 +01:00
2020-06-03 20:09:46 -07:00
2022-08-30 10:56:22 +02:00
2025-08-04 23:34:03 +02:00
2022-11-17 13:58:32 +01:00
2025-09-15 14:06:44 +02:00
2023-10-27 20:36:49 +02:00
2024-04-02 15:01:40 +02:00
2025-09-04 21:59:09 +02:00
2025-08-18 14:23:08 +02:00
2025-08-18 17:15:02 +02:00
2025-09-03 18:06:04 +02:00
2023-01-03 18:46:06 +01:00
2025-08-18 17:15:02 +02:00
2025-03-19 11:47:30 +01:00
2024-07-04 16:00:36 +02:00
2022-02-15 17:47:11 +01:00
2025-01-15 16:26:30 +02:00
2025-06-11 10:56:06 +03:00
2025-09-17 11:22:11 +02:00
2023-03-22 11:08:40 -07:00
2020-05-12 16:05:30 +02:00
2024-02-15 22:07:39 +01:00
2020-07-18 12:31:49 +02:00
2025-04-18 09:33:33 +02:00
2020-11-06 23:14:58 +01:00
2024-01-29 17:19:28 +01:00
2025-04-01 20:31:39 +02:00
2025-06-23 09:50:51 -07:00
2025-03-04 20:30:33 +01:00
2024-08-13 12:00:09 +02:00
2023-11-23 11:32:29 +01:00
2024-02-08 08:45:35 -05:00
2022-11-17 15:15:22 +01:00
2025-06-16 18:45:18 +02:00
2025-03-19 11:47:30 +01:00
2025-03-19 11:47:30 +01:00
2020-06-09 09:39:13 -07:00
2025-03-19 11:15:11 +01:00
2020-07-22 23:56:53 +02:00
2025-09-05 10:40:40 -07:00
2021-07-30 17:09:01 +02:00
2024-01-25 23:52:21 -08:00
2023-11-10 19:59:05 +09:00
2025-09-30 13:40:02 -04:00
2023-08-31 14:08:19 -04:00
2025-09-11 08:57:16 -07:00
2025-09-30 13:40:02 -04:00
2025-09-30 13:36:41 -04:00
2024-07-16 12:14:11 -04:00
2024-02-07 17:05:21 +01:00
2025-05-04 15:59:43 +02:00
2024-03-01 12:54:25 +01:00
2022-08-14 11:24:29 +02:00
2025-09-11 12:22:37 +02:00
2025-04-12 11:13:05 +02:00
2022-11-10 13:12:45 +01:00
2025-05-13 10:42:06 +02:00
2023-09-06 23:50:46 +02:00
2025-05-06 11:28:57 +02:00
2025-05-06 11:28:57 +02:00
2025-06-11 11:20:51 +02:00
2024-05-06 17:39:09 +02:00
2025-08-18 14:23:07 +02:00
2022-12-05 22:22:34 +01:00
2025-10-06 12:37:34 -07:00
2025-06-02 12:24:58 -07:00
2025-08-22 19:37:11 +02:00
2025-08-22 13:52:21 +02:00
2025-04-01 22:26:21 +02:00
2025-03-19 11:47:30 +01:00
2025-09-15 18:04:20 +02:00
2025-03-17 22:06:53 -07:00
2023-06-16 17:17:42 +02:00
2025-03-19 11:47:30 +01:00
2025-04-09 22:02:30 +02:00
2025-03-19 11:47:30 +01:00
2025-05-17 10:38:16 +02:00
2025-05-17 10:38:16 +02:00
2025-04-06 20:06:36 +02:00
2025-03-19 11:47:30 +01:00
2022-02-23 10:58:28 +01:00
2025-05-17 10:38:29 +02:00
2025-05-17 10:38:29 +02:00
2021-08-10 23:31:43 +02:00
2022-06-17 14:24:14 -05:00
2024-01-30 15:17:12 +01:00
2025-09-08 15:38:06 +02:00
2024-02-15 22:07:45 +01:00
2025-08-21 20:09:27 +02:00
2025-04-23 07:49:14 -07:00
2025-03-19 11:47:30 +01:00
2025-03-19 11:47:30 +01:00
2025-08-27 22:45:44 -07:00
2025-05-17 10:38:16 +02:00
2022-12-15 10:37:26 -08:00
2025-07-31 14:57:54 -07:00
2025-04-17 10:39:25 -07:00
2023-02-02 22:33:10 -08:00
2025-04-17 10:39:25 -07:00
2024-01-10 10:52:28 +01:00
2025-03-19 11:47:30 +01:00
2025-07-09 22:42:18 -07:00
2022-04-04 15:58:24 -07:00
2021-12-19 22:44:34 +01:00
2021-02-15 20:09:46 +01:00
2025-04-24 11:19:41 -07:00
2025-03-04 20:30:33 +01:00
2021-08-10 23:31:43 +02:00
2024-01-10 10:52:28 +01:00
2025-09-05 10:40:40 -07:00
2025-03-19 11:47:30 +01:00
2025-02-21 22:32:25 +01:00
2025-03-19 11:47:30 +01:00
2025-03-19 11:47:30 +01:00
2025-03-19 11:47:30 +01:00
2025-03-19 11:47:30 +01:00
2024-09-13 17:28:35 +02:00
2024-04-24 11:48:08 +02:00
2024-08-07 20:04:38 +02:00
2025-07-24 16:55:11 -07:00
2024-10-06 03:59:22 -04:00
2025-09-15 11:55:50 +02:00
2025-09-08 15:38:06 +02:00
2025-03-19 08:03:05 -07:00
2025-03-19 11:26:24 +01:00
2024-03-22 09:37:09 +01:00
2024-12-06 10:41:59 +01:00
2025-08-26 19:33:19 +02:00
2025-05-21 10:48:21 -07:00
2025-03-19 11:47:30 +01:00
2025-09-03 18:00:01 +02:00
2025-09-04 13:12:51 +02:00
2025-09-05 09:01:42 +02:00
2025-10-11 10:51:14 -07:00
2022-11-04 15:33:30 -07:00
2025-09-30 11:11:21 -07:00
2023-06-16 10:16:00 +02:00
2025-06-09 08:50:58 -07:00
2025-09-08 15:38:06 +02:00
2025-04-16 15:36:23 +08:00
2025-04-08 22:03:51 +02:00
2025-07-10 13:30:17 +02:00
2021-02-10 23:34:17 +01:00
2024-09-03 21:15:32 -07:00
2025-04-10 11:59:28 +02:00
2025-09-08 15:38:06 +02:00
2020-05-28 21:18:40 +02:00
2025-03-04 20:30:33 +01:00
2021-09-21 13:57:43 +02:00
2024-12-13 09:28:32 +01:00
2025-04-18 09:33:33 +02:00
2025-02-14 10:32:05 +01:00
2025-05-02 10:23:47 +02:00
2025-05-02 10:23:47 +02:00
2025-08-21 08:51:39 -07:00
2025-05-02 10:36:36 +02:00
2025-02-28 10:18:26 +01:00
2024-12-13 09:28:32 +01:00
2024-01-24 11:49:19 +01:00
2025-05-11 17:48:15 -07:00
2025-03-14 14:20:50 -04:00
2025-09-11 11:38:28 -07:00
2025-08-18 14:23:04 +02:00
2021-05-31 22:32:26 +02:00
2025-09-17 08:14:04 +02:00
2023-06-09 17:44:16 -07:00
2024-10-02 16:53:38 +02:00
2022-05-13 23:59:23 +02:00
2025-03-19 11:12:29 +01:00
2025-03-19 21:56:42 +01:00
2025-07-24 19:12:32 -07:00
2025-09-22 21:25:36 +02:00
2024-01-29 17:26:56 +01:00
2024-01-25 19:10:29 +01:00
2025-02-18 11:08:36 +01:00
2025-05-02 10:24:39 +02:00
2023-05-03 10:37:22 -07:00
2025-04-13 21:12:04 +02:00
2025-09-08 15:38:06 +02:00
2023-06-06 18:31:37 +02:00
2024-07-10 14:23:38 +02:00
2025-03-19 11:47:30 +01:00
2022-03-28 19:38:51 -07:00
2025-08-21 20:09:21 +02:00
2022-01-30 21:17:00 -05:00
2022-01-30 21:17:00 -05:00
2025-04-22 14:24:07 +02:00
2025-02-27 11:19:06 +01:00
2024-07-03 21:27:04 +02:00
2025-09-10 09:35:33 -05:00
2024-03-29 14:24:50 +01:00
2021-04-30 11:20:40 -07:00
2024-06-25 17:15:48 +02:00
2025-09-23 09:22:32 -07:00
2024-07-15 20:25:16 -07:00
2024-02-15 19:21:39 -08:00
2024-06-19 12:35:18 -07:00
2025-04-01 22:26:27 +02:00
2022-02-11 20:39:39 +11:00
2022-02-11 20:39:39 +11:00
2022-02-11 20:39:39 +11:00