概览
QEMU
结构性重构是主线:tests/tcg 迁入 meson、多目标合并进单个 qemu-system、virt 板 QOM 命名解耦同步推进;Arm Realm、Arm64 命名 CPU 模型与 APX 等新特性仍在评审或 RFC 阶段。
KVM
机密计算占据大半版面:KVM Planes/SEV-SNP、Secure AVIC、Arm CCA Realms 与 RMM 固件层同时迭代,CoCo 热迁移 API 仍在 RFC;selftests 与 FRED 等基础能力也在推进。
Libvirt
以修复和能力补齐为主:守护进程 stream 自死锁与 udev 线程 join 死锁已修复,resctrl 整进程分配、64 位直方图边界、x86 大虚机免 IOMMU 已合入,TLS-PSK 迁移仍在等评审。
统计
进展3
本期变化:KVM Planes/SEV-SNP 基座以 60 补丁进入评审,SEV-SNP Secure AVIC 到 RFC v3,Arm CCA 的 KVM Realms 与 RMM 固件层到 v18/v19,QEMU 侧 Realm 支持到 RFC v4。
讨论中:CoCo 热迁移 API 仍停在 RFC v2,跨厂商统一抽象、plane 0 的 IRQ 调度假设与 RMM/KVM 依赖顺序尚未收敛。
本期变化:check-tcg 迁入 meson 的 105 补丁以 PULL 提交并集齐 R-b,合并带来的问题另有补丁跟进;x86_64 交叉容器系列已合入 master,随后 tcg tests PULL 也合入。
讨论中:RISC-V multiarch 测试系列因与 meson 改动冲突需 rebase;相关 PULL 仍在征集 tested 标签,新 CI 覆盖面尚待验证。
本期变化:v3 覆盖 ARM/RISC-V/MicroBlaze,v4 聚焦 ARM 与 MicroBlaze 并加入 qtests 校验;virt 板 QOM 类型与 -M 名拆分、TCG raise_excp 共享分别推进,以减少符号冲突。
讨论中:跨目标符号与 QOM 命名冲突仍逐个清理,commit message 格式等评审意见待处理,合并的目标范围在 v3 与 v4 间仍在调整。
显示 27 / 27 条精选
当前筛选没有匹配条目。
QEMU12 条精选
v2 引入 x86_64 基础容器,借助 qemu-user-binfmt 让 aarch64 等主机也能运行完整 TCG 测试;系列已合入 master,同时暴露 aarch64 上 loongarch64 memory 测试问题。
影响:扩大 CI 测试面、便于统一维护 docker 镜像;新暴露的测试失败需单独跟踪。
查看原始标题
[PATCH v2 0/6] tests/tcg: use x86_64 cross containers on all host architectures当前 Arm64 KVM 只支持 -cpu host/max,阻碍跨主机迁移;RFC v4 提出分层命名模型,同一模型在能力足够的主机上解析出相同 ID 寄存器,并可再按字段覆盖。
影响:若收敛将补齐 Arm64 与 x86 在 CPU 模型和迁移兼容上的差距;评审仍在追问属性类型与继承链表述。
查看原始标题
[RFC PATCH v4 00/25] named CPU models for Arm64 on KVMv2 系列实现 APX,主要目的是在不引入 AVX512 复杂度的前提下建立 EVEX 解码基础设施,并让解码器更贴近 Intel 实际行为;已获 Richard Henderson Reviewed-by。
影响:为后续 EVEX 扩展铺路,提升 x86 TCG 指令覆盖,对使用 APX 的客户机模拟有直接意义。
查看原始标题
[PATCH v2 00/17] target/i386/tcg: implement APX105 个补丁把 TCG 测试从 Makefile 转为 meson,覆盖所有架构与 user/system 测试并补齐依赖;该 PULL 已集齐多位维护者 Reviewed-by,仍在征集 tested 标签。
影响:测试框架统一后依赖检测更准确、维护成本更低,但会改变下游打包与 CI 的调用方式,需关注迁移后的构建差异。
查看原始标题
[PULL 000/105] move check-tcg into the meson build许多 TCG 目标重复实现 raise_exception,且该 C 符号在统一二进制中冲突;系列新增共享 C 退出路径与 TCG 助手并逐目标迁移,剩余助手加架构前缀。
影响:减少模板代码并为单二进制消除符号冲突;改动覆盖多数 TCG 目标,需逐目标验证语义不变。
查看原始标题
[PATCH 00/21] accel/tcg: share raise_excp across TCG targetsRFC v4 通过 rme-guest 对象在 Arm RME 主机上启动 Realm,支持 in-place 转换并要求 guest_memfd 使用 share=on,兼容 CCA KVM v16,并定义固件 Realm 能力标记。
影响:Arm 机密虚机从内核走向 QEMU 可用路径;命令行与内存后端配置仍偏复杂,讨论能否自动选择共享内存后端。
查看原始标题
[RFC v4 00/24] Add Realm support to QEMU-VMMv3 把 halt 到执行的状态转换拆为 poll_during_halt/leaving_halt 回调,要求 ARM halt_reason 全部原子访问、RISC-V 统一 MIP 访问器;已获 R-b,仍有多个补丁待评审。
影响:清理 TCG 各目标重复逻辑并明确 has_work() 的 BQL 契约,降低 halt 路径竞态风险,但触及 ARM/x86/RISC-V 多目标代码。
查看原始标题
[PATCH v3 00/21] accel/tcg: Make halt-to-exec transition explicit and remove cpu_exec_halt88 个补丁把全部 qemu-iotests 从 HMP 迁到 QMP,使测试框架可在 --disable-hmp 下运行,并新增 x-query-qtree 以简化 test 172 的迁移。
影响:测试将只依赖 QMP,减少对 HMP 输出的 grep 与检查,提升可维护性,也推进 HMP 可选化目标。
查看原始标题
[PATCH 00/88] qemu-iotests: migrate away from HMP ("make HMP optional" follow-up)30 个补丁把 test-vmstate、vdagent、virtio 等大量设备改为新的迁移 API,并把 virtio_save/load 改为 static;维护者已将其中的两个补丁排入 migration-next。
影响:统一迁移状态的读写路径,减少旧 API 存量,为后续迁移重构打基础;设备作者需按新接口适配。
查看原始标题
[PATCH 00/30] move to new migration APIs该 PULL 让 QEMU 可在 --disable-hmp 下构建,并把相关选项从默认构建中剥离;讨论确认后续需把仍依赖 HMP 的测试迁到 QMP。
影响:缩小可选组件依赖、简化精简构建,但测试与工具链需同步去 HMP 化,下游打包脚本要跟进。
查看原始标题
[GIT PULL 00/50] Make HMP optional多个目标都注册 MACHINE_TYPE_NAME("virt") 会在同一进程内冲突;v2 新增 machine_class_set_name() 将 -M 名与 QOM 类型解耦,保持 -M virt 的用法与迁移兼容。
影响:为单二进制多目标共存扫清 QOM 命名障碍;-M help 排序与迁移兼容行为需回归验证。
查看原始标题
[PATCH v2 0/9] machine: uniquify virt QOM namesv4 让单个 qemu-system 可运行 ARM(32/64) 与 MicroBlaze,借助 TargetInfo 过滤机器、唯一化 QOM 名并合并编译源码,新增 qtests 校验 -M 帮助与前缀规则。
影响:减少重复编译与发布体积,但改变 -M 名称解析和 QOM 类型约定,需关注兼容性,属长期结构性重构。
查看原始标题
[PATCH v4 00/55] single-binary: link multi-targets into qemu-systemKVM9 条精选
RFC v3 将 Secure AVIC 接入 AVIC/APICv 代码路径以复用现有实现,强制使用 split irqchip 并放弃 KVM IOAPIC 改动;讨论确认按 GPA 引用后备页是硬件设计而非缺陷。
影响:提升机密 APIC 虚机的中断路径能力,并与 TDX 共用 APICv 路径;强制 irqchip 约束会影响用户态配置。
查看原始标题
[RFC PATCH v3 00/27] KVM: SVM: Add support for SEV-SNP Secure AVICTDX 保护 TD 的寄存器状态,无法沿用普通 selftests 的初始化方式;v14 围绕 VM 启动状态与 ucall 实现构建基本生命周期测试,评审倾向保留 is_guest_memfd_required()。
影响:为 TDX 提供可复用的测试基座,也是后续机密特性回归测试的基础。
查看原始标题
[PATCH v14 00/22] TDX KVM selftests系列在 KVM 中实现 planes,用于承载 SEV-SNP VMPL、TDX、Arm CCA 与 Hyper-V VSM 等特权分离能力,用户态接口较此前版本有调整;讨论集中在 plane 0 的 IRQ 调度假设。
影响:为多种机密/特权分离硬件提供统一 KVM 抽象,是后续 SEV-SNP 客户机支持的基础,接口变动会影响 VMM。
查看原始标题
[PATCH 00/60] KVM Planes + SEV-SNP Supportv18 延续拆分策略,新增 VM 类型回调与 stage2 抽象,先用 kvm_stage2_unmap_range() 替换旧接口以便后续接入 VM 专属后端,并声明无功能变更。
影响:为 Arm 机密计算在 KVM 侧铺路,回调化重构降低了后续 Realm 支持的侵入性。
查看原始标题
[PATCH v18 00/23] KVM: arm64: CCA: Add basic plumbing for Realmsv10 让客户机使用 FRED,并允许嵌套 VMX 使用 FRED 控制;讨论确认 AMD Zen 6 支持 INT1 事件类型 5、FRED 规范已更新,相关 selftest 通过。
影响:新平台特性在 KVM 中可用,嵌套虚拟化同步跟进,x86 用户可受益于新的事件投递机制。
查看原始标题
[PATCH v10 00/28] KVM: Enable FRED support with KVM VMXv19 提供 RMM v2.0 的 RMI SMC 定义、直接调用包装与 RMM 发现,作为 CCA 主机支持的第一部分独立提交,便于 PCI IDE 等其它 TSM 场景复用。
影响:把固件层从 KVM Realm 系列解耦,使非 KVM 使用方也能依赖;讨论质疑客户机是否应感知 RME 硬件。
查看原始标题
[PATCH v19 0/7] firmware: arm_rmm: Add RMM v2.0 base RMI supportv2 对页表分配器等做清理与重构,为 PPC 需要多页且自然对齐的页表做准备;该系列已应用到 kvm-x86 selftests,PPC selftests v4 计划基于它发布。
影响:避免给分配器再加罕用参数,改善 selftests 跨架构基础设施,是 PPC 支持落地的关键前置条件。
查看原始标题
[PATCH v2 00/20] KVM: selftests: PPC pre-enablingRFC v2 以 Intel TDX 现有实现为样例,尝试定义非厂商绑定的 CoCo 热迁移内核接口,前提是 guest 内存与 vCPU 状态对用户态和 KVM 都不可见。
影响:机密虚机热迁移是 CoCo 落地的关键缺口;目前仍在征集 AMD SEV-SNP 等厂商对同一 API 的意见,也有待公开的 QEMU 侧驱动样例。
查看原始标题
[RFC PATCH v2 0/4] Add KVM API for confidential guest live migration该 RFC 是为 LPC'26 KVM Microconf 准备的端到端 PoC,使虚机在宿主机内核 live update 时保留物理 CPU 继续执行,并补齐 ARM64 caretaker 执行循环与状态序列化。
影响:探索内核热更新不中断虚机的能力,对运维可用性价值明显;当前仅为 PoC,依赖 guest_memfd 保留系列。
查看原始标题
[RFC PATCH 00/46] Orphaned Virtual MachinesLibvirt6 条精选
QEMU 在 kernel-irqchip=split 时默认启用 Extended Destination ID 作为中断重映射的替代,补丁放开 x86 上不开 IOMMU 的大虚机限制;已评审合入。
影响:简化大内存 x86 虚机配置,减少对 IOMMU 的硬性依赖,改善可用性与兼容性。
查看原始标题
[PATCH] qemu: allow large VMs without IOMMU for x86v2 允许 cachetune/memorytune/energytune 及其 monitor 省略 vcpus 属性,从而覆盖 QEMU IOThread、worker 与 emulator 线程;整进程与按 vCPU 配置不能混用,已合入。
影响:资源控制不再遗漏 QEMU 自身线程的开销,更贴近实际部署;两种配置模式互斥,需在文档中说明。
查看原始标题
[PATCH v2 0/4] resctrl: support whole-process allocations and monitoring系列在 libvirt 中通过 QEMU monitor 实例化 tls-creds-psk,为迁移数据流提供 PSK 认证,避免 X.509 证书链的部署与过期管理;已获 Reviewed-by,作者在催评审。
影响:为迁移加密提供更轻量的密钥管理路径,等待维护者进一步反馈与合入。
查看原始标题
[PATCH v4 0/7] Add TLS-PSK support for migrationlibvirt 原以 unsigned int 存储该边界,限制在 UINT32_MAX 纳秒,而 QEMU 使用 uint64;补丁改用 unsigned long long 并同步 XML schema、解析与 monitor 序列化,已合入。
影响:解除大延迟边界的配置限制,测试覆盖超过 UINT32_MAX 的取值,该功能在 libvirt 侧不再受限。
查看原始标题
[PATCH] qemu: support 64-bit latency histogram boundariesdaemonStreamEvent() 在持有 priv->lock 时关闭客户端,关闭钩子在同一线程再次取锁,导致主循环死锁、RPC 无响应而虚机仍在运行,9.5.0 与 master 均受影响;补丁已合入。
影响:修复现场遇到的守护进程假死、只能重启恢复的问题,对运维稳定性意义明显。
查看原始标题
[PATCH 0/2] remote: fix a daemon self-deadlock on the stream error pathnodeStateShutdownWait() 持锁 join udev 事件线程,而该线程的退出路径同样需要这把锁,造成关机阶段 systemd 超时;补丁调整加锁范围,已合入。
影响:消除关机/重启阶段的死锁与超时,提升宿主生命周期的可靠性。