virt-report虚拟化社区动态
Monthly Review · 2026-08

2026 年 8 月 社区动态

guest_memfd 安全缓解与机密计算特性并行推进,QEMU 构建/测试基础设施重构成为本月主线之一。

AI 分析 · deepseek-v4-flash2007 个活跃线程2026-08-01 至 2026-08-31Asia/Shanghai
摘要由 AI 基于本期高活跃线程生成。标题链接直达原始邮件或 issue;技术决策请以原始讨论为准。

概览

QEMU

测试与构建现代化进入密集评审期,tests/tcg 迁移 meson、single-binary 与 HMP 可选并进;TCG 内部 API 和 QOM/QAPI 类型系统也在持续深化。

KVM

guest_memfd 的 direct map removal 与 in-place conversion 两条线持续迭代,TDX/SNP/Arm CCA 等机密计算特性进入评审深水区,KVM clock 清理重新活跃。

Libvirt

围绕加速 vSMMU/vCMDQ、TLS-PSK 迁移与流处理稳定性修复推进,整体以功能补全和规避管理面故障为主。

统计

2007活跃线程
13898活动条目
5842补丁邮件
336RFC 邮件
241新建 issue
3活跃已合并 MR
QEMU邮件列表8547
QEMUGitLab350
KVM邮件列表4670
Libvirt邮件列表307
LibvirtGitLab24

进展4

guest_memfd 安全与转换

本期变化:guest_memfd 两条主线并行迭代:direct map removal v12 明确 x86 支持范围并排除 TDX/SEV-SNP,in-place conversion v10 围绕用户态访问与 GUP 路径深入讨论,均获多位维护者审阅。二者共同决定 CoCo 内存管理最终形态。

讨论中:两条系列均未合入,in-place conversion 与 direct map removal 的交互(如私有内存映射与 uaccess 路由)仍需确认;对 TDX/SNP 的适配约束依赖后续版本验证。

机密计算特性栈

本期变化:TDX Module Extensions v2 将 quoting 转为正式评审,Arm CCA v16 重新合并固件与 KVM 系列并讨论 ICV_PMR trap 性能;QEMU Realm RFC v3 跟进 CCA v16,新增度量与固件描述符支持。

讨论中:TDX quoting 的静态 quote buffer 移除、CCA SVE 向量长度暴露与 trap 开销、Realm 固件描述符对 ON_OFF_AUTO_ON 的处理均待下一版澄清。

QEMU 构建与测试现代化

本期变化:tests/tcg 迁移 meson 推进到 v8,获 Richard Henderson R-b,仅剩逐目标评审;HMP 可选化到 v5,攻击面收窄讨论渐定;single-binary 扩展到 QOM 动态过滤,ARM+RISC-V 联合链接已有可行方案。

讨论中:HMP 缺失命令清单与清理边界、single-binary 实验性选项默认值、TCG 测试迁移的 MacOS 兼容细节仍待收口;三者均未合入主线。

KVM clock 清理

本期变化:PV clocks vs TSC v6 聚焦 CPUID 0x40000010 的可迁移性,KVM clock 清理 v7 rebase 到 kvm-x86/next,并讨论将 pvclock_vcpu_time_info 移入 UAPI 与新增校正接口;David Woodhouse 已在本地合流两个系列测试。

讨论中:两个系列均未合并,PV clock 对旧 KVM 环境的错误提示策略,以及新接口的 CAP 号与 UAPI 布局仍需迭代确认。

项目
条目

QEMU12 条精选

ArmSMMU评审中qemu-devel 邮件列表· 2026-08-31

为 Arm SMMUv3 模型增加 Secure 状态支持,但不实现 Secure Stage 2;v5 已获 Eric Auger 审阅。

影响:为 TZ/Secure 虚拟化场景和未来 Realm 支持提供 SMMU 基础。

查看原始标题[RFC v5 00/28] hw/arm/smmuv3: Support Secure state for SMMUv3
ArmRISC-V构建评审中qemu-devel 邮件列表· 2026-08-28

在动态过滤基础上,去除每目标符号冲突,使单二进制同时支持 ARM 和 RISC-V;v2 保留各目标独立二进制。

影响:验证多目标单二进制可行性,减少发行版二进制数量。

查看原始标题[PATCH 00/12] single-binary: link ARM and RISC-V into qemu-system
Armhw/arm已应用启动与生命周期qemu-devel 邮件列表· 2026-08-21

把各板卡静态的 arm_boot_info 迁移到 MachineState 子类,明确归属;已应用至 target-arm.next。

影响:消除隐式静态对象,简化 reset 路径和后续板卡清理。

查看原始标题[PATCH v2 00/20] hw/arm: Store the ARM boot info in the machine state
TCG评审中qemu-devel 邮件列表· 2026-08-03

将 breakpoint/watchpoint 从线性结构改为 IntervalTree,统一地址区间表示,并调整 TLB flush 接口。

影响:降低大量断点场景下的查找开销,简化 watchpoint 语义。

查看原始标题[PATCH v3 00/51] accel/tcg: Use IntervalTree for breakpoints and watchpoints
QOM/QAPI评审中qemu-devel 邮件列表· 2026-08-26

为 QOM 属性引入 QAPITypeInfo,使管理工具能从 query-qmp-schema 发现属性类型,替代自由形式 type 字符串。

影响:改善 libvirt 等上层对设备属性的可发现性,减少 ad-hoc 映射。

查看原始标题[PATCH v3 00/74] qom/qdev: associate properties with QAPI schema types
tests/tcg评审中qemu-devel 邮件列表· 2026-08-28

用 meson 替换 TCG 测试 makefile,覆盖全部架构 user/system 模式并补齐依赖关系。v8 已获核心维护者审阅,仅剩逐目标评审。

影响:降低 TCG 测试维护成本,使依赖可完整描述,为后续 CI 扩展打基础。

查看原始标题[PATCH v8 000/105] tests/tcg: run tests with meson
TCG评审中qemu-devel 邮件列表· 2026-08-31

新增带偏移缩放寻址的 TCG 原语,并在 i386 等目标落地,减少位移/加法组合。

影响:为 TCG 生成更紧凑的代码,降低翻译开销。

查看原始标题[PATCH 00/16] tcg: Introduce INDEX_op_lea
构建评审中qemu-devel 邮件列表· 2026-08-31

在 machine 过滤之后,对 QOM 类型做动态过滤,解决 Kconfig 与 host/target 组合导致的存在性问题。

影响:确保单二进制暴露的机器/设备与目标二进制一致。

查看原始标题[PATCH 00/47] single-binary: implement dynamic filtering for QOM types
monitor评审中qemu-devel 邮件列表· 2026-08-28

通过 --disable-hmp 使 QEMU 仅支持 QMP,减少攻击面和二进制体积。v5 已有多位维护者审阅,讨论渐定。

影响:面向管理面和最小化部署,降低交互式调试接口暴露风险。

查看原始标题[PATCH v5 00/50] Make HMP optional (and later standalone)
PowerPCtarget/ppc评审中qemu-devel 邮件列表· 2026-08-28

将更多 PPC 指令迁至 decodetree,清理 ISA 2.07 flag,并推进维护者交接。v3 已通过 POWER10 TCG 实测。

影响:改善 PPC TCG 可维护性,为后续 ISA 支持奠基。

查看原始标题[PATCH v3 00/37] target/ppc: PPC TCG Improvements (decodetree migrations + ISA 2.07 flag updates)
系统层面已排队qemu-devel 邮件列表· 2026-08-24

将 ram_addr_t 固定为 uint64_t,并清理 vexpress、xen-mapcache 等 32 位分支;已排队。

影响:减少条件编译,简化内存管理代码。

查看原始标题[PATCH v2 0/9] Remove 32bit support on system/user emulations
工具链评审中qemu-devel 邮件列表· 2026-08-11

作为 QEMU 子项目引入,用 LLVM 在构建期将 helper 函数翻译为 TCG,降低复杂指令移植成本。

影响:有望加速 Hexagon/RISC-V 等目标的新指令实现。

查看原始标题[PATCH v2 00/50] Introduce helper-to-tcg

KVM12 条精选

x86TDX评审中KVM 邮件列表· 2026-08-11

新增 TDX Module Extensions 基础设施并实现基于 DICE 的 quoting,v2 将 quoting 从 RFC 转为正式评审。

影响:为 TDX attestation quoting 提供核心路径,影响远端证明生态。

查看原始标题[PATCH v2 00/17] Enable DICE-based TDX Quoting Extension
ArmCCA评审中KVM 邮件列表· 2026-08-27

为保护虚拟机引入 RMM 固件通信与 KVM 支持,v16 重新合并固件/KVM 两段,并讨论 SVE 向量长度与 trap 开销。

影响:使 Arm 平台具备硬件强制隔离的机密虚拟机能力。

查看原始标题[PATCH v16 00/45] arm64: Support for Arm CCA in KVM
Arms390x移植评审中KVM 邮件列表· 2026-08-28

通过提取 arm64 公共代码,在 s390 上提供 KVM 加速的 ARM CPU 虚拟化,已获 Marc Zyngier 审阅。

影响:为异构虚拟化/实验场景铺路,但离主线合入尚远。

查看原始标题[PATCH v6 00/33] KVM: s390: Introduce arm64 KVM
x86SEV评审中KVM 邮件列表· 2026-08-05

在 gmem 释放 VMSA 页面时强制回收,避免 RMP 仍标记 IN_USE 造成 #PF;与 VMX APIC access page 逻辑对齐。

影响:消除特定生命周期操作下 SEV-SNP VM 的内存损坏/崩溃风险。

查看原始标题[PATCH v4 00/18] KVM: SEV: Fix RMP #PF due to freeing in-use VMSA
x86clock评审中KVM 邮件列表· 2026-08-18

修复 SNP/TDX 来宾使用不可信 hypervisor PV clock 的问题,并让 KVM 来宾合理使用 TSC;讨论 CPUID 0x40000010 可迁移性。

影响:提升机密来宾时间语义的可信性与迁移正确性。

查看原始标题[PATCH v6 00/51] x86: Try to wrangle PV clocks vs. TSC
ArmGIC评审中KVM 邮件列表· 2026-08-07

在 vGICv5 基础上支持中断路由表(IRS),使 SPI/LPI 可用,配合 FVP 可启动完整 Linux guest。

影响:将 GICv5 从 PPI-only 扩展到可用的完整中断模型。

查看原始标题[PATCH v4 00/48] KVM: arm64: Add GICv5 IRS support
ArmGIC评审中KVM 邮件列表· 2026-08-13

实现 GICv5 虚拟设备 CPU 接口,v6 用 bitmap 管理 PPI 状态;Sashiko 报告两个 high 级问题待回应。

影响:是 GICv5 使能的基础步骤。

查看原始标题[PATCH v6 00/39] KVM: arm64: Introduce vGIC-v5 with PPI support
guest_memfd评审中KVM 邮件列表· 2026-08-14

允许将 guest_memfd 内存从内核 direct map 移除,缓解 Spectre 型瞬态执行攻击;x86 支持并排除 TDX/SEV-SNP 的直访路径。

影响:显著缩小宿主侧针对 guest 内存的推测侧信道面。

查看原始标题[PATCH v12 00/16] Direct Map Removal Support for guest_memfd
guest_memfd评审中KVM 邮件列表· 2026-08-27

支持在 guest_memfd 中进行 private/shared 原地转换,v10 讨论 KVM 访问经由 uaccess 路由以保证 private 内存不映射用户态。

影响:为 TDX/SNP 等 CoCo 的页转换和内存热管理奠定基础。

查看原始标题[PATCH v10 00/41] guest_memfd: In-place conversion support
nested评审中KVM 邮件列表· 2026-08-05

为 nSVM/nVMX 增加更细粒度的执行权限控制,MBEC 与 GMET 分别来自 Intel/AMD;v6 被视为接近最终。

影响:提升 nested 虚拟化的安全性和兼容性。

查看原始标题[PATCH v6 00/28] KVM: combined patchset for MBEC/GMET support
SEV评审中KVM 邮件列表· 2026-08-10

利用 RMPOPT 指令跳过不含 SNP 内存的 1GB 区域 RMP 检查,并在 guest 终止后延迟重新优化。

影响:降低 hypervisor 与非 SNP 来宾的内存写入开销。

查看原始标题[PATCH v11 0/6] Add RMPOPT support.
clock评审中KVM 邮件列表· 2026-08-28

修正 get_kvmclock_ns 未应用 guest TSC scaling 的系统漂移,消除冗余 masterclock 更新,并引入新 UAPI 对参考 TSC 校正。

影响:改善长时间运行/迁移场景下 guest 时钟稳定性。

查看原始标题[PATCH v7 00/36] Cleaning up the KVM clock mess

Libvirt7 条精选

SMMU评审中虚机性能libvirt-devel 邮件列表· 2026-08-06

允许将多个加速 SMMUv3 实例与 pcie-expander-bus 上的 hostdev 关联,v11 修复 capabilities 门控。

影响:使直通设备按宿主 SMMU 拓扑正确绑定加速虚拟 SMMU。

查看原始标题[PATCH v11 0/7] qemu: Support HW-accelerated vSMMUs
SMMU评审中libvirt-devel 邮件列表· 2026-08-19

新增 cmdqv iommu 驱动属性,控制加速 SMMUv3 的 vCMDQ 启用,依赖 vSMMU 系列。

影响:提供命令队列虚拟化加速入口,改善 SMMU 性能。

查看原始标题[PATCH v4 0/3] qemu: Support vCMDQ
iothread评审中libvirt-devel 邮件列表· 2026-08-24

暴露 QEMU iothread poll-weight,控制自适应轮询权重,范围 [0,63];v2 拆分 setter/getter 路径。

影响:运维可调优事件轮询行为,改善 IO 延迟。

查看原始标题[PATCH v2 0/7] qemu: add poll-weight support for iothreads
migration评审中热迁移libvirt-devel 邮件列表· 2026-08-20

在 X.509 之外加入 PSK 认证,简化证书部署并降低证书泄露风险;v3 已获审阅。

影响:为不同规模环境提供更灵活的加密迁移通道。

查看原始标题[PATCH v3 0/7] Add TLS-PSK support for migration
qemu评审中libvirt-devel 邮件列表· 2026-08-26

依据 QEMU 的 vmcoreinfo 修复,在 Windows guest 上自动使用 win-dmp 格式,而非不可加载的 elf 默认。

影响:提高 Windows 崩溃转储的可调试性。

查看原始标题[PATCH v2 0/5] qemu: auto-select win-dmp for Windows guest crash dumps
nwfilter评审中libvirt-devel 邮件列表· 2026-08-11

实现 nftables 作为 ebtables 的替代后端,并加入单元测试与旧规则清理机制。

影响:顺应内核防火墙演进,提供可切换的过滤后端。

查看原始标题[PATCH v8 0/4] nwfilter: add nwfilter nftables driver
remote评审中libvirt-devel 邮件列表· 2026-08-27

daemonStreamHandleWriteData 的返回契约含糊导致错误回复被二次释放,触发 libvirtd abort 并 crash-loop。

影响:避免管理面中断,保证运行中 guest 仍可管理。

查看原始标题[PATCH 0/2] Fix double free of stream error reply aborting libvirtd
数据源 QEMU:lists.gnu.org mbox / GitLab · KVM:lore.kernel.org public-inbox Git · Libvirt:官方 HyperKitty / GitLab