Linux kernel -stable discussions
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: stable@vger.kernel.org,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	 Sasha Levin <sashal@kernel.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>,
	Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>,
	 Robin Murphy <robin.murphy@arm.com>,
	linux-kernel@vger.kernel.org, iommu@lists.linux.dev,
	 Gao Shiyuan <gaoshiyuan@baidu.com>,
	Vasant Hegde <vasant.hegde@amd.com>,
	 Joerg Roedel <jroedel@suse.de>,
	Sean Christopherson <seanjc@google.com>,
	Stable@vger.kernel.org,  Ashish Kalra <ashish.kalra@amd.com>,
	Paolo Bonzini <pbonzini@redhat.com>,
	 Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	 Dave Hansen <dave.hansen@linux.intel.com>,
	x86@kernel.org,  Joerg Roedel <joro@8bytes.org>,
	Will Deacon <will@kernel.org>
Subject: [PATCH 6.12.y 2/2] x86/sev: Fix broken SNP support with KVM module built-in
Date: Wed,  2 Sep 2026 12:13:21 -0700	[thread overview]
Message-ID: <20260902191321.2644150-3-seanjc@google.com> (raw)
In-Reply-To: <20260902191321.2644150-1-seanjc@google.com>

From: Ashish Kalra <ashish.kalra@amd.com>

[ Upstream commit 409f45387c937145adeeeebc6d6032c2ec232b35 ]

Fix issues with enabling SNP host support and effectively SNP support
which is broken with respect to the KVM module being built-in.

SNP host support is enabled in snp_rmptable_init() which is invoked as
device_initcall(). SNP check on IOMMU is done during IOMMU PCI init
(IOMMU_PCI_INIT stage). And for that reason snp_rmptable_init() is
currently invoked via device_initcall() and cannot be invoked via
subsys_initcall() as core IOMMU subsystem gets initialized via
subsys_initcall().

Now, if kvm_amd module is built-in, it gets initialized before SNP host
support is enabled in snp_rmptable_init() :

[   10.131811] kvm_amd: TSC scaling supported
[   10.136384] kvm_amd: Nested Virtualization enabled
[   10.141734] kvm_amd: Nested Paging enabled
[   10.146304] kvm_amd: LBR virtualization supported
[   10.151557] kvm_amd: SEV enabled (ASIDs 100 - 509)
[   10.156905] kvm_amd: SEV-ES enabled (ASIDs 1 - 99)
[   10.162256] kvm_amd: SEV-SNP enabled (ASIDs 1 - 99)
[   10.171508] kvm_amd: Virtual VMLOAD VMSAVE supported
[   10.177052] kvm_amd: Virtual GIF supported
...
...
[   10.201648] kvm_amd: in svm_enable_virtualization_cpu

And then svm_x86_ops->enable_virtualization_cpu()
(svm_enable_virtualization_cpu) programs MSR_VM_HSAVE_PA as following:
wrmsrl(MSR_VM_HSAVE_PA, sd->save_area_pa);

So VM_HSAVE_PA is non-zero before SNP support is enabled on all CPUs.

snp_rmptable_init() gets invoked after svm_enable_virtualization_cpu()
as following :
...
[   11.256138] kvm_amd: in svm_enable_virtualization_cpu
...
[   11.264918] SEV-SNP: in snp_rmptable_init

This triggers a #GP exception in snp_rmptable_init() when snp_enable()
is invoked to set SNP_EN in SYSCFG MSR:

[   11.294289] unchecked MSR access error: WRMSR to 0xc0010010 (tried to write 0x0000000003fc0000) at rIP: 0xffffffffaf5d5c28 (native_write_msr+0x8/0x30)
...
[   11.294404] Call Trace:
[   11.294482]  <IRQ>
[   11.294513]  ? show_stack_regs+0x26/0x30
[   11.294522]  ? ex_handler_msr+0x10f/0x180
[   11.294529]  ? search_extable+0x2b/0x40
[   11.294538]  ? fixup_exception+0x2dd/0x340
[   11.294542]  ? exc_general_protection+0x14f/0x440
[   11.294550]  ? asm_exc_general_protection+0x2b/0x30
[   11.294557]  ? __pfx_snp_enable+0x10/0x10
[   11.294567]  ? native_write_msr+0x8/0x30
[   11.294570]  ? __snp_enable+0x5d/0x70
[   11.294575]  snp_enable+0x19/0x20
[   11.294578]  __flush_smp_call_function_queue+0x9c/0x3a0
[   11.294586]  generic_smp_call_function_single_interrupt+0x17/0x20
[   11.294589]  __sysvec_call_function+0x20/0x90
[   11.294596]  sysvec_call_function+0x80/0xb0
[   11.294601]  </IRQ>
[   11.294603]  <TASK>
[   11.294605]  asm_sysvec_call_function+0x1f/0x30
...
[   11.294631]  arch_cpu_idle+0xd/0x20
[   11.294633]  default_idle_call+0x34/0xd0
[   11.294636]  do_idle+0x1f1/0x230
[   11.294643]  ? complete+0x71/0x80
[   11.294649]  cpu_startup_entry+0x30/0x40
[   11.294652]  start_secondary+0x12d/0x160
[   11.294655]  common_startup_64+0x13e/0x141
[   11.294662]  </TASK>

This #GP exception is getting triggered due to the following errata for
AMD family 19h Models 10h-1Fh Processors:

Processor may generate spurious #GP(0) Exception on WRMSR instruction:
Description:
The Processor will generate a spurious #GP(0) Exception on a WRMSR
instruction if the following conditions are all met:
- the target of the WRMSR is a SYSCFG register.
- the write changes the value of SYSCFG.SNPEn from 0 to 1.
- One of the threads that share the physical core has a non-zero
value in the VM_HSAVE_PA MSR.

The document being referred to above:
https://www.amd.com/content/dam/amd/en/documents/processor-tech-docs/revision-guides/57095-PUB_1_01.pdf

To summarize, with kvm_amd module being built-in, KVM/SVM initialization
happens before host SNP is enabled and this SVM initialization
sets VM_HSAVE_PA to non-zero, which then triggers a #GP when
SYSCFG.SNPEn is being set and this will subsequently cause
SNP_INIT(_EX) to fail with INVALID_CONFIG error as SYSCFG[SnpEn] is not
set on all CPUs.

Essentially SNP host enabling code should be invoked before KVM
initialization, which is currently not the case when KVM is built-in.

Add fix to call snp_rmptable_init() early from iommu_snp_enable()
directly and not invoked via device_initcall() which enables SNP host
support before KVM initialization with kvm_amd module built-in.

Add additional handling for `iommu=off` or `amd_iommu=off` options.

Note that IOMMUs need to be enabled for SNP initialization, therefore,
if host SNP support is enabled but late IOMMU initialization fails
then that will cause PSP driver's SNP_INIT to fail as IOMMU SNP sanity
checks in SNP firmware will fail with invalid configuration error as
below:

[    9.723114] ccp 0000:23:00.1: sev enabled
[    9.727602] ccp 0000:23:00.1: psp enabled
[    9.732527] ccp 0000:a2:00.1: enabling device (0000 -> 0002)
[    9.739098] ccp 0000:a2:00.1: no command queues available
[    9.745167] ccp 0000:a2:00.1: psp enabled
[    9.805337] ccp 0000:23:00.1: SEV-SNP: failed to INIT rc -5, error 0x3
[    9.866426] ccp 0000:23:00.1: SEV API:1.53 build:5

Fixes: c3b86e61b756 ("x86/cpufeatures: Enable/unmask SEV-SNP CPU feature")
Co-developed-by: Sean Christopherson <seanjc@google.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Co-developed-by: Vasant Hegde <vasant.hegde@amd.com>
Signed-off-by: Vasant Hegde <vasant.hegde@amd.com>
Cc: <Stable@vger.kernel.org>
Signed-off-by: Ashish Kalra <ashish.kalra@amd.com>
Acked-by: Joerg Roedel <jroedel@suse.de>
Message-ID: <138b520fb83964782303b43ade4369cd181fdd9c.1739226950.git.ashish.kalra@amd.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
[sean: handcode/port the sev.c changes]
Signed-off-by: Sean Christopherson <seanjc@google.com>
---
 arch/x86/include/asm/sev.h |  2 ++
 arch/x86/virt/svm/sev.c    | 21 ++++++---------------
 drivers/iommu/amd/init.c   | 34 ++++++++++++++++++++++++++++++----
 3 files changed, 38 insertions(+), 19 deletions(-)

diff --git a/arch/x86/include/asm/sev.h b/arch/x86/include/asm/sev.h
index ee34ab00a8d6..2524ada3708e 100644
--- a/arch/x86/include/asm/sev.h
+++ b/arch/x86/include/asm/sev.h
@@ -440,6 +440,7 @@ static inline void snp_update_svsm_ca(void) { }
 
 #ifdef CONFIG_KVM_AMD_SEV
 bool snp_probe_rmptable_info(void);
+int snp_rmptable_init(void);
 int snp_lookup_rmpentry(u64 pfn, bool *assigned, int *level);
 void snp_dump_hva_rmpentry(unsigned long address);
 int psmash(u64 pfn);
@@ -450,6 +451,7 @@ void kdump_sev_callback(void);
 void snp_fixup_e820_tables(void);
 #else
 static inline bool snp_probe_rmptable_info(void) { return false; }
+static inline int snp_rmptable_init(void) { return -ENOSYS; }
 static inline int snp_lookup_rmpentry(u64 pfn, bool *assigned, int *level) { return -ENODEV; }
 static inline void snp_dump_hva_rmpentry(unsigned long address) {}
 static inline int psmash(u64 pfn) { return -ENODEV; }
diff --git a/arch/x86/virt/svm/sev.c b/arch/x86/virt/svm/sev.c
index 9a6a943d8e41..738698390ebf 100644
--- a/arch/x86/virt/svm/sev.c
+++ b/arch/x86/virt/svm/sev.c
@@ -189,7 +189,7 @@ void __init snp_fixup_e820_tables(void)
  * described in the SNP_INIT_EX firmware command description in the SNP
  * firmware ABI spec.
  */
-static int __init snp_rmptable_init(void)
+int __init snp_rmptable_init(void)
 {
 	u64 max_rmp_pfn, calc_rmp_sz, rmptable_size, rmp_end, val;
 	void *rmptable_start;
@@ -197,11 +197,11 @@ static int __init snp_rmptable_init(void)
 	if (!cc_platform_has(CC_ATTR_HOST_SEV_SNP))
 		return 0;
 
-	if (!amd_iommu_snp_en)
-		goto nosnp;
+	if (WARN_ON_ONCE(!amd_iommu_snp_en))
+		return -ENOSYS;
 
 	if (!probed_rmp_size)
-		goto nosnp;
+		return -ENOSYS;
 
 	rmp_end = probed_rmp_base + probed_rmp_size - 1;
 
@@ -218,13 +218,13 @@ static int __init snp_rmptable_init(void)
 	if (calc_rmp_sz > probed_rmp_size) {
 		pr_err("Memory reserved for the RMP table does not cover full system RAM (expected 0x%llx got 0x%llx)\n",
 		       calc_rmp_sz, probed_rmp_size);
-		goto nosnp;
+		return -ENOSYS;
 	}
 
 	rmptable_start = memremap(probed_rmp_base, probed_rmp_size, MEMREMAP_WB);
 	if (!rmptable_start) {
 		pr_err("Failed to map RMP table\n");
-		goto nosnp;
+		return -ENOSYS;
 	}
 
 	/*
@@ -261,17 +261,8 @@ static int __init snp_rmptable_init(void)
 	crash_kexec_post_notifiers = true;
 
 	return 0;
-
-nosnp:
-	cc_platform_clear(CC_ATTR_HOST_SEV_SNP);
-	return -ENOSYS;
 }
 
-/*
- * This must be called after the IOMMU has been initialized.
- */
-device_initcall(snp_rmptable_init);
-
 static struct rmpentry *get_rmpentry(u64 pfn)
 {
 	if (WARN_ON_ONCE(pfn > rmptable_max_pfn))
diff --git a/drivers/iommu/amd/init.c b/drivers/iommu/amd/init.c
index 0e270533bf12..54f3c17520d5 100644
--- a/drivers/iommu/amd/init.c
+++ b/drivers/iommu/amd/init.c
@@ -3219,7 +3219,7 @@ static bool __init detect_ivrs(void)
 	return true;
 }
 
-static void iommu_snp_enable(void)
+static __init void iommu_snp_enable(void)
 {
 #ifdef CONFIG_KVM_AMD_SEV
 	if (!cc_platform_has(CC_ATTR_HOST_SEV_SNP))
@@ -3244,6 +3244,14 @@ static void iommu_snp_enable(void)
 		goto disable_snp;
 	}
 
+	/*
+	 * Enable host SNP support once SNP support is checked on IOMMU.
+	 */
+	if (snp_rmptable_init()) {
+		pr_warn("SNP: RMP initialization failed, SNP cannot be supported.\n");
+		goto disable_snp;
+	}
+
 	pr_info("IOMMU SNP support enabled.\n");
 	return;
 
@@ -3381,6 +3389,19 @@ static int __init iommu_go_to_state(enum iommu_init_state state)
 		ret = state_next();
 	}
 
+	/*
+	 * SNP platform initilazation requires IOMMUs to be fully configured.
+	 * If the SNP support on IOMMUs has NOT been checked, simply mark SNP
+	 * as unsupported. If the SNP support on IOMMUs has been checked and
+	 * host SNP support enabled but RMP enforcement has not been enabled
+	 * in IOMMUs, then the system is in a half-baked state, but can limp
+	 * along as all memory should be Hypervisor-Owned in the RMP. WARN,
+	 * but leave SNP as "supported" to avoid confusing the kernel.
+	 */
+	if (ret && cc_platform_has(CC_ATTR_HOST_SEV_SNP) &&
+	    !WARN_ON_ONCE(amd_iommu_snp_en))
+		cc_platform_clear(CC_ATTR_HOST_SEV_SNP);
+
 	return ret;
 }
 
@@ -3489,18 +3510,23 @@ void __init amd_iommu_detect(void)
 	int ret;
 
 	if (no_iommu || (iommu_detected && !gart_iommu_aperture))
-		return;
+		goto disable_snp;
 
 	if (!amd_iommu_sme_check())
-		return;
+		goto disable_snp;
 
 	ret = iommu_go_to_state(IOMMU_IVRS_DETECTED);
 	if (ret)
-		return;
+		goto disable_snp;
 
 	amd_iommu_detected = true;
 	iommu_detected = 1;
 	x86_init.iommu.iommu_init = amd_iommu_init;
+	return;
+
+disable_snp:
+	if (cc_platform_has(CC_ATTR_HOST_SEV_SNP))
+		cc_platform_clear(CC_ATTR_HOST_SEV_SNP);
 }
 
 /****************************************************************************
-- 
2.55.0.970.g62bdec98f9-goog


  parent reply	other threads:[~2026-09-02 19:13 UTC|newest]

Thread overview: 205+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-17 13:31 [PATCH 6.12 000/181] 6.12.104-rc1 review Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 001/181] mount: honour SB_NOUSER in the new mount API Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 002/181] selftests/bpf: Fail unbound UDP on sockmap update Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 003/181] drm/amd/display: Add AV mute wait frames to dce110_set_avmute Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 004/181] drm/amd/display: Check for tg ops in dce110_set_avmute Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 005/181] s390/zcrypt: Fix missing mem scrub at clear key import in cca_clr2cipherkey() Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 006/181] NFS: Pin the struct nfs_server during a FREE_STATEID call Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 007/181] arm64: dts: broadcom: bcm2712: Remove non-functional EL2 virtual timer Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 008/181] ARM: npcm: Fix OF node refcount leaks in SMP setup Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 009/181] ARM: dts: BCM5301X: fix PCIe controller 2 second interrupt Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 010/181] drm/bridge: ps8640: propagate AUX transfer register errors Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 011/181] net: hns3: fix speed configuration residue after driver reload Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 012/181] Revert "net: thunderbolt: Enable end-to-end flow control also in transmit" Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 013/181] bonding: alb: re-check primary_is_promisc under RTNL in bond_alb_monitor Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 014/181] enic: fix tx_hang_reset use-after-free on device removal Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 015/181] net/mlx5e: TC, Check if flow is PEER before acquiring devcom lock Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 016/181] pds_core: keep the health thread stopped during reset Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 017/181] pds_core: cancel pending PCI reset work on AER recovery Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 018/181] netfilter: ipset: switch ext_size to atomic64_t Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 019/181] ipvs: avoid out-of-bounds write in ip_vs_nat_icmp Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 020/181] ipvs: return the csum validation for forward hook Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 021/181] watchdog: bd96801_wdt: Fix timeout for enabled WDG Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 022/181] btrfs: fix memory leak in btrfs_do_encoded_write() Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 023/181] bpf: Preserve pointer state for commuted arithmetic Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 024/181] net/smc: fix qentry overwrite for CONFIRM_LINK and ADD_LINK_CONT in smc_llc_event_handler() Greg Kroah-Hartman
2026-08-17 13:31 ` [PATCH 6.12 025/181] net/sched: cls_route: fix fastmap use-after-free on filter Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 026/181] net: hisilicon: hix5hd2_gmac: remove redundant NAPI delete Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 027/181] devlink: fix net namespace reference leak in reload Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 028/181] net/mlx5: fw_tracer, return NULL on create error Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 029/181] counter: microchip-tcb-capture: Fix DT channel validation Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 030/181] bpf: tcp: Make mem flags configurable through bpf_iter_tcp_realloc_batch Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 031/181] bpf: tcp: Make sure iter->batch always contains a full bucket snapshot Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 032/181] bpf: tcp: Get rid of st_bucket_done Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 033/181] bpf: tcp: Use bpf_tcp_iter_batch_item for bpf_tcp_iter_state batch items Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 034/181] bpf: tcp: Avoid socket skips and repeats during iteration Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 035/181] bpf: tcp: Fix use-after-free in bpf_iter_tcp_established_batch() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 036/181] vhost/vdpa: reject overflowing PA map page counts on 32-bit Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 037/181] vdpa/mlx5: Fix buffer length in create_direct_keys() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 038/181] tcp: do not change rcv_ssthresh in tcp_measure_rcv_mss() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 039/181] xsk: require at least 16 bytes of TX metadata Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 040/181] udp: fix potential use-after-free in tunnel segmentation Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 041/181] net/sched: sch_cake: drop WARN_ON(1) for malformed packets in ACK filter Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 042/181] net/openvswitch: check Ethernet header length in key_extract() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 043/181] net/sched: cls_api: Always acquire rtnl_lock when destroying locked classifiers Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 044/181] hwmon: (nzxt-smart2) Check return value of init_device() in probe Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 045/181] hwmon: (pmbus/lm25066) Fix PMBus coefficient calculations Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 046/181] selftests/ftrace: refactor eprobes test to fix argument checks Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 047/181] bnxt_en: Move RSS table fill outside __bnxt_hwrm_vnic_set_rss() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 048/181] bnxt_en: Determine and store default RX ring in vnic structure Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 049/181] bnxt_en: Refresh VNIC default ring on queue restart if needed Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 050/181] bnxt_en: Fix PTP PPS setting bug Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 051/181] sctp: fix addip_serial increment on ASCONF_ACK allocation failure Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 052/181] tcp: fix TFO max_qlen accounting across reuseport migration Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 053/181] net/ncsi: fix heap OOB read in NCSI_CMD_SEND_CMD payload length Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 054/181] net: prestera: validate firmware header length Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 055/181] net: remove WARN_ON_ONCE() from sk_mc_loop() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 056/181] net/smc: fix TOCTOU race between smc_listen_out() and listener close Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 057/181] net: thunderbolt: Tear down DMA paths before stopping the rings Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 058/181] ata: pata_sl82c105: fix bridge revision use-after-free Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 059/181] net/atm: fix slab-out-of-bounds read in vcc_setsockopt() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 060/181] sctp: clear control chunk transport if it is being removed Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 061/181] tls: dont abort the connection on signal-interrupted sends Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 062/181] hwmon: (corsair-psu) fix possible out-of-bounds access on missing string termination Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 063/181] hwmon: (ads7828) Fix external VREF regulator handling Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 064/181] hwmon: (ltc4282) Avoid overflow in maximum power calculation Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 065/181] hwmon: (ltc4282) Clamp negative current limits Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 066/181] hwmon: (ltc4282) Fix parsing adi,current-limit-sense-microvolt Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 067/181] mm/vmscan: wake up flushers conditionally to avoid cgroup OOM Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 068/181] net: fec: do not release NULL pages when RX buffer allocation fails Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 069/181] spi: spi-fsl-dspi: Avoid setup_accel logic for DMA transfers Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 070/181] mtd: spinand: fix direct mapping creation sizes Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 071/181] mtd: spinand: try a regular dirmap if creating a dirmap for continuous reading fails Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 072/181] mtd: spinand: repeat reading in regular mode if " Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 073/181] swapfile: call cond_resched() before locking si->lock Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 074/181] Input: evdev - sanitize event type index when fetching event masks Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 075/181] ALSA: usb-audio: fix OOB write on Type II inbound URBs Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 076/181] usb: atm: cxacru: properly kill rcv_urb on error in cxacru_cm() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 077/181] thunderbolt: icm: Preserve USB4 proxy data-valid bit Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 078/181] usb: cdnsp: fix incorrect endian conversions for APB timeout register Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 079/181] usb: gadget: f_ncm: Use unsigned int for ndp_index Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 080/181] net: usb: ax88179_178a: fix skb leak in ax88179_tx_fixup() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 081/181] net: usb: ipheth: fix carrier_work UAF on disconnect Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 082/181] vt: add permission check for KDSKBMETA ioctl Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 083/181] vt: stabilize tty reference in kbd_keycode with tty_port_tty_get Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 084/181] Input: evdev - fix information leak in evdev_pass_values() Greg Kroah-Hartman
2026-08-17 13:32 ` [PATCH 6.12 085/181] ima: fix out-of-bounds read in xattr_verify() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 086/181] ipvs: stop estimator after disabled calc phase Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 087/181] ipvs: add totalconns for dest Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 088/181] ipvs: properly update the overload flag on dest edit Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 089/181] ipvs: clear IPv4 options after rebasing tunnel ICMP errors Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 090/181] packet: use consistent hard_header_len in non-ring send paths Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 091/181] packet: use consistent hard_header_len in TX_RING send path Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 092/181] net/packet: reset the MAC header on the packet-socket transmit path Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 093/181] packet: synchronize pressure clearing with ring reconfiguration Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 094/181] net: fix skb length accounting after generic XDP frag adjustment Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 095/181] net: openvswitch: reallocate update replies for mismatched IDs Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 096/181] net/sched: reject overly deep qdisc hierarchies Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 097/181] net: octeontx2-pf: Fix UB in shift operation Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 098/181] net: remove CAP_SYS_RAWIO zero-padding in dev_validate_header Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 099/181] mac802154: fix netdev use-after-free in beacon worker Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 100/181] netfilter: ebt_nflog: pin the NFLOG backend Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 101/181] net: bridge: mrp: fix uninitialised bytes on the wire Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 102/181] KVM: s390: pci: Fix memory accounting for pinned/unpinned pages Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 103/181] KVM: s390: pci: Fix missing error codes and memory unaccounting Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 104/181] KVM: s390: pci: Fix resource leak on IRQ registration failure Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 105/181] KVM: s390: pci: Fix aisb calculation Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 106/181] block: Reorder the request allocation code in blk_mq_submit_bio() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 107/181] blk-mq: pop cached request if it is usable Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 108/181] blk-mq: reinsert cached request to the list Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 109/181] dt-bindings: crypto: qcom,ice: Fix missing power-domain and iface clk Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 110/181] crypto: ccp - Add new SEV/SNP platform shutdown API Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 111/181] KVM: SVM: Add support to initialize SEV/SNP functionality in KVM Greg Kroah-Hartman
2026-08-19  7:11   ` Harshit Mogalapalli
2026-08-19  8:58     ` Jinpu Wang
2026-08-19 16:28       ` Sean Christopherson
2026-08-21  4:33         ` Sasha Levin
2026-09-02 19:13           ` [PATCH 6.12.y 0/2] x86/sev: Make SNP usable with KVM=y Sean Christopherson
2026-09-02 19:13             ` [PATCH 6.12.y 1/2] iommu/amd: remove return value of amd_iommu_detect Sean Christopherson
2026-09-02 19:13             ` Sean Christopherson [this message]
2026-09-04  2:52             ` [PATCH 6.12.y 0/2] x86/sev: Make SNP usable with KVM=y Sasha Levin
2026-08-20  4:19     ` [PATCH 6.12 111/181] KVM: SVM: Add support to initialize SEV/SNP functionality in KVM Sasha Levin
2026-08-17 13:33 ` [PATCH 6.12 112/181] crypto: ccp - Fix checks for SNP_VLEK_LOAD input buffer length Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 113/181] crypto: ccp - Abort doing SEV INIT if SNP INIT fails Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 114/181] futex: Prevent robust futex exit race some more Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 115/181] kunit/fortify: Replace "volatile" with OPTIMIZER_HIDE_VAR() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 116/181] kunit/fortify: Add back "volatile" for sizeof() constants Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 117/181] pinctrl: renesas: rzg2l: Use -ENOTSUPP instead of -EOPNOTSUPP Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 118/181] selftests/bpf: Ensure UDP sockets are bound Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 119/181] selftests/bpf: Adapt sockmap update error handling Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 120/181] ipv4: Fix fib_nlmsg_size() for RTA_VIA nexthops Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 121/181] ipv4: fix use-after-free in fib_nhc_update_mtu() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 122/181] mei: pull kvfree out of spinlock Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 123/181] nvmem: layouts: Add fixed-layout driver Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 124/181] serial: qcom-geni: fix TX DMA buffer flush Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 125/181] serial: 8250_dma: Clear stale RX state on shutdown Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 126/181] staging: rtl8723bs: fix OOB read in rtw_get_wpa_ie() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 127/181] staging: rtl8723bs: fix OOB read in WMM_param_handler() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 128/181] staging: rtl8723bs: fix missing shared-key auth challenge length check Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 129/181] staging: rtl8723bs: validate monitor transmit frame lengths Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 130/181] misc: fastrpc: fix channel ctx ref leak when session alloc fails Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 131/181] misc: fastrpc: Remove buffer from list prior to unmap operation Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 132/181] misc: fastrpc: take fl->lock when moving mmaps on interrupted invoke Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 133/181] misc: fastrpc: fix memory leak in fastrpc_channel_ctx_free Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 134/181] ring-buffer: Fix crash passing ERR_PTR to kthread_stop() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 135/181] ALSA: usb: Fix UAF at delayed release of MIDI2 EPs Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 136/181] ALSA: usx2y: bound the hwdep mmap fault offset Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 137/181] tracing: Fix race between update_event_fields and, event_define_fields Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 138/181] fbdev: bitblit: bound-check glyph index in bit_cursor() Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 139/181] ring-buffer: Prevent subbuf order change when resizing is disabled Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 140/181] mm/huge_memory: fix huge_zero_pfn race Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 141/181] net: smc: fix splice entry lifetime imbalance in smc_rx_splice Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 142/181] ipv6: prevent in6_dev_get() from resurrecting inet6_dev Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 143/181] netfilter: bridge: release template ct on non-IP path Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 144/181] netfilter: nf_conntrack: defer invalid log until after unlock Greg Kroah-Hartman
2026-08-17 13:33 ` [PATCH 6.12 145/181] net: atlantic: free stranded TX buffers on ring deinit Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 146/181] net: atlantic: free RX pages of consumed but not refilled buffers Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 147/181] net/sched: act_ct: fix sk_buff leak when the header checks reject a packet Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 148/181] net/sched: act_gact, act_police: range check the fallback control action Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 149/181] ovl: dont warn when the mount is completed from another user namespace Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 150/181] binfmt_misc: " Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 151/181] Revert "drm/amdgpu: fix aperture mapping leak" Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 152/181] xdp: reject clones that overrun skb_shared_info tailroom Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 153/181] vxlan: do not arm the ageing timer on a device that is down Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 154/181] vsock/virtio: read virtqueues under worker locks Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 155/181] vsock/virtio: avoid refilling the RX queue after teardown Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 156/181] veth: fix skb length accounting after XDP frag adjustment Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 157/181] vhost: reset the vring metadata cache on vring reconfiguration Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 158/181] tls: dont leave a full plaintext sk_msg ring unpushed Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 159/181] tipc: read le->link under the node lock in tipc_node_link_down() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 160/181] smb: client: Fix use-after-free in cifs_try_adding_channels() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 161/181] KVM: x86/mmu: WARN and clear role.invalid when creating a child shadow page Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 162/181] eventfs: Fix use-after-free in eventfs_remove_rec() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 163/181] eventfs: Use children field for rcu head and add memory barriers Greg Kroah-Hartman
2026-08-18 20:16   ` Harshit Mogalapalli
2026-08-19 11:39     ` Sasha Levin
2026-08-17 13:34 ` [PATCH 6.12 164/181] Revert "thermal/drivers/hwmon: Cleanup coding style a bit" Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 165/181] ptp: ocp: Fix board ID over-read Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 166/181] ring-buffer: Use current_context for safe per-CPU buffer swap Greg Kroah-Hartman
2026-08-18 20:20   ` Harshit Mogalapalli
2026-08-19 11:39     ` Sasha Levin
2026-08-17 13:34 ` [PATCH 6.12 167/181] ipv6: fix Route Information option length validation Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 168/181] ip6_tunnel: clear skb2->cb[] in ip6ip6_err() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 169/181] fscrypt: use the mount idmap for the owner check in fscrypt_ioctl_set_policy() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 170/181] sched/psi: Shut down rtpoll_timer in psi_cgroup_free() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 171/181] ima: Instantiate file_truncate and path_truncate hooks Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 172/181] fsverity: Fix bpf_get_fsverity_digest() dynptr assumptions Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 173/181] fsverity: Fix silent truncation in bpf_get_fsverity_digest() Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 174/181] bpf, sockmap: Fix sk_redir use-after-free in send verdict Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 175/181] scsi: scsi_debug: Negate wrapped memcmp() result Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 176/181] sctp: keep chunk->transport in step with the list it is queued on Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 177/181] sctp: fix use-after-free of cached ASCONF chunk Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 178/181] sctp: clear new_transport when removing a peer Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 179/181] thunderbolt: Bound the DROM dual link port number before indexing sw->ports Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 180/181] thunderbolt: Fix bandwidth group reservation indexing Greg Kroah-Hartman
2026-08-17 13:34 ` [PATCH 6.12 181/181] bpf: tcp: fix double sock release on batch realloc Greg Kroah-Hartman
2026-08-17 17:56 ` [PATCH 6.12 000/181] 6.12.104-rc1 review Pavel Machek
2026-08-17 19:18 ` Peter Schneider
2026-08-17 20:18 ` Florian Fainelli
2026-08-18  5:38 ` Dominique Martinet
2026-08-18  8:44 ` Francesco Dolcini
2026-08-18  9:59 ` Ron Economos
2026-08-18 14:06 ` Brett A C Sheffield
2026-08-18 15:51 ` Mark Brown
2026-08-18 17:46 ` Shuah Khan
2026-08-19  7:13 ` Harshit Mogalapalli

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260902191321.2644150-3-seanjc@google.com \
    --to=seanjc@google.com \
    --cc=ashish.kalra@amd.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=gaoshiyuan@baidu.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=hpa@zytor.com \
    --cc=iommu@lists.linux.dev \
    --cc=joro@8bytes.org \
    --cc=jroedel@suse.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=robin.murphy@arm.com \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    --cc=suravee.suthikulpanit@amd.com \
    --cc=tglx@linutronix.de \
    --cc=vasant.hegde@amd.com \
    --cc=will@kernel.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox