virt-report虚拟化社区动态
Daily Brief · 2026-09-21

2026-09-21 社区动态

宿主内核热升级与 CoCo 迁移的 KVM API 成为当日讨论核心,QEMU、Libvirt 侧则以清理与稳定性修复推进

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

概览

QEMU

当日以清理收敛为主:object props 转 class props、qemu_opts_parse 简化、TCG 跨目标共享 raise_excp;设备侧补齐 virtio-sound 迁移、virtio-console 尺寸与 intel_iommu PRQ,Arm64 命名 CPU 模型与 AI 贡献政策两个 RFC 仍在争论。

KVM

焦点是宿主内核 live update(OrphanVM)与 CoCo 迁移内核 API 两个 RFC;已合入 kvmclock 清理 part 1 与 selftests PPC 前置清理,折叠页表下 pXdp_get() 的 mm 改动正在评审。

Libvirt

resctrl 整进程分配与监控已合入;当日另有零长度位图 UB、remote stream 自死锁两处稳定性补丁在评审,块延迟直方图边界对齐 QEMU 的 uint64。

统计

166活跃线程
521活动条目
182补丁邮件
68RFC 邮件
1新建 issue
0活跃已合并 MR
QEMU邮件列表196
QEMUGitLab18
KVM邮件列表296
Libvirt邮件列表9
LibvirtGitLab2

观察4

KVM · CoCo guest live migration 内核 API

TDX/SEV-SNP/CCA 三方接口的命名与语义仍在争论,后续版本将决定能否形成统一 ABI。

QEMU · Arm64 命名 CPU 模型

RFC 已到 v4 并补齐 query-cpu-definitions 阻塞项上报,直接决定 Arm64 能否跨主机 live migration,尚未定稿。

Libvirt · remote stream 错误路径死锁

现场回归自 9.2.0 起潜伏且会拖垮整个 daemon 的 RPC,补丁仍在评审,需关注合入与测试覆盖。

KVM · OrphanVM 跨内核热升级

PoC 已在 x86/Arm 与模拟环境验证,评审聚焦代码复用与开销测量,若成立将改变宿主维护窗口设计。

项目
条目

显示 21 / 21 条精选

QEMU11 条精选

首次出现ArmCPU模型讨论中qemu-devel 邮件列表· 2026-09-21

v4 提出层级化命名 CPU 模型,使同一模型在任意支持主机上解析出相同 ID 寄存器,并支持 override 定制;本期新增 query-cpu-definitions 阻塞项上报。

影响:直指 Arm64 只能用 -cpu host/max、无法跨主机迁移的痛点;仍为 RFC,模型契约与阻塞项接口未定。

查看原始标题[RFC PATCH v4 00/25] named CPU models for Arm64 on KVM
首次出现x86QOM评审中qemu-devel 邮件列表· 2026-09-21

v4 把 hw/i386 中残留的 object props 全部改为 class props,并新增 object_class_property_add_alias()/object_property_set_alias() 以支持别名属性。

影响:QOM 属性向 class props 收敛,便于类型检查与全树逐步清理;本期获得 Berrangé 的 R-b。

查看原始标题[PATCH v4 0/9] hw/i386: convert object props to class props
首次出现x86TCG评审中qemu-devel 邮件列表· 2026-09-21

gen_setcc 路径可能把 NULL 传给声明非空的函数参数,后续 TCG 改进启用 ubsan 后会报错;补丁始终初始化 CCPrepare.reg,Philippe 给出 R-b。

影响:消除一处未定义行为,为后续 TCG 生成器改动让路;无功能变化。

查看原始标题[PATCH] target/i386/tcg: Always initialize CCPrepare.reg
有新进展TCG评审中qemu-devel 邮件列表· 2026-09-21

系列引入共享 C 退出路径与 TCG helper,逐目标改用 gen_helper_raise_excp 并删除复制的 helper 定义;本期讨论 API 契约注释的措辞并获 LGTM。

影响:消除各 TCG 前端重复代码,helper_raise_exception 全局符号冲突随之让路,为统一二进制铺路。

查看原始标题[PATCH 00/21] accel/tcg: share raise_excp across TCG targets
首次出现s390xvirtio-scsi已合并启动与生命周期qemu-devel 邮件列表· 2026-09-21

v3 让 s390-ccw 固件可从 virtio-scsi-pci 控制器引导,统一 IPL/CCW/PCI 命名并检查 SCSI 建立失败,基于新加的 Secure IPL 特性 rebase,已按 11.2 应用。

影响:s390x guest 获得 PCI 路径的 SCSI 引导能力,IPL 相关命名与错误检查更清晰。

查看原始标题[PATCH v3 0/8] s390x: Add support for virtio-scsi-pci boot device
首次出现qemu-options讨论中qemu-devel 邮件列表· 2026-09-21

RFC 指出 qemu_opts_parse() 存在 Error 与非 Error 两套入口、列表查找与帮助/警告/错误打印层级混乱、NULL list 会崩溃,并提出合并路径。

影响:若采纳可减少新增命令行选项的样板代码与崩溃面;当前为 RFC,需要逐个确认大量调用者。

查看原始标题[RFC PATCH 00/14] qemu-options: Remove some complexity
首次出现流程讨论中qemu-devel 邮件列表· 2026-09-21

v3 明确是对此前政策的完整 U-turn,重新界定 AI 辅助贡献的边界;本期 Paolo 提出措辞修改,Berrangé 给出 R-b,讨论仍在继续。

影响:直接关系 QEMU 补丁提交与评审规范,会长期影响使用 LLM 的开发流程;尚未定稿。

查看原始标题[RFC PATCH v3 0/4] docs/devel, AGENTS.md: a completely new policy on AI-generated contributions
首次出现virtio评审中qemu-devel 邮件列表· 2026-09-21

v7 系列让 virtio-console 把终端尺寸变化通知 guest,并配套 Linux 侧 s390/sclp 控制台 resize 补丁。

影响:guest 控制台可在宿主窗口尺寸变化后正确重排,改善交互式控制台与远程管理体验。

查看原始标题[PATCH v7 00/12] virtio-console: notify about the terminal size
首次出现machine新提交启动与生命周期GitLab qemu· 2026-09-21

自 v10.0.0-rc2 起 vmapple 启动即崩溃,报 PGIOSurfaceHostDeviceDescriptor 未识别 selector;issue 处于打开状态,尚无修复结论。

影响:该实验性 Apple 平台机器在较新宿主系统上不可用,依赖宿主私有框架使修复范围受限。

查看原始标题vmapple machine unusable with macOS 15.4
首次出现migration评审中热迁移qemu-devel 邮件列表· 2026-09-21

v5 在 Volker Rümelin 旧补丁基础上 rebase,为 virtio-sound 增加基础迁移支持;作者手工验证 Ubuntu 24.04 桌面 VM 并跑通 CI,Manos 给出 R-b。

影响:音频设备不再是阻止 live migration 的组件;属基础支持,评审顺带指出 PCM 预缓冲语义疑问。

查看原始标题[PATCH v5 00/10] hw/audio/virtio-sound: basic migration support
首次出现intel_iommu评审中qemu-devel 邮件列表· 2026-09-21

v7 在 svm=on 场景下让 QEMU 从宿主 FAULTQ 读取可恢复缺页事件并注入 guest,再把 guest 的 page group response 回传宿主;本期讨论 BQL 持有路径并新增 R-b。

影响:直通设备第一级缺页可由 guest 自行处理,扩展 vSVM 下 vIOMMU 的可用性;加锁假设是评审焦点。

查看原始标题[PATCH v7 0/6] intel_iommu: Enable PRQ support for passthrough device

KVM6 条精选

有新进展Arms390x跨架构评审中KVM 邮件列表· 2026-09-21

v8 共 29 补丁,s390 抽取 arm64 定义与实现以提供 KVM 加速的 ARM 虚拟化,用 ARM64_S390_COMMON 标记跳过架构专属代码;本期修正误入改动,并讨论把 SAE 支持作为 hwcap 上报。

影响:为非 Arm 主机运行 KVM 加速 Arm guest 提供路径,代价是跨架构代码共享与头文件导出的长期维护负担。

查看原始标题[PATCH v8 00/29] KVM: s390: Introduce arm64 KVM
首次出现x86kvmclock已合并KVM 邮件列表· 2026-09-21

v10 已合入 kvm-x86 clocks:修正 TSC scaling 下的时钟精度、显式禁用无 CONSTANT_TSC 的 scaling,并去掉过期 CPUID leaf 的说明。

影响:宿主侧 kvmclock 计算路径被理顺,guest 时间在 TSC scaling 场景更准确;masterclock 重构与新 uAPI 留给 part 2。

查看原始标题[PATCH v10 00/21] KVM: x86: Cleaning up the KVM clock mess, part 1
有新进展selftests已合并KVM 邮件列表· 2026-09-21

该清理系列已落到 kvm-x86 selftests(含 LoongArch 最小 GPA 取 0x180000、vGIC LPI 压测搬迁),本期新增合入确认与 Ritesh 的 LGTM,PPC selftests v4 将基于其上重发。

影响:为 PPC selftests 铺路:多页页表的自然对齐改用 region type 表达,避免给页分配器新增少用参数。

查看原始标题[PATCH v2 00/20] KVM: selftests: PPC pre-enabling
首次出现liveupdate讨论中热升级KVM 邮件列表· 2026-09-21

46 篇 RFC 演示宿主内核 live update 期间 OrphanVM 在保留物理 CPU 上继续执行,面向 LPC'26 KVM Microconf;评审质疑未复用现有 entry/exit 代码,并要求时序数据。

影响:若成立,内核热升级可不再停机,重塑宿主维护窗口设计;目前是 PoC,复用路径与开销均未定。

查看原始标题[RFC PATCH 00/46] Orphaned Virtual Machines
有新进展CoCo讨论中热迁移KVM 邮件列表· 2026-09-21

v2 继续收敛非厂商绑定的 CoCo 迁移内核 API;本期讨论集中在命名与角色设置(EXPORT/IMPORT 与 GET/SET、在 SETUP 处设置角色),并邀请 AMD 评估 SEV-SNP 适用性。

影响:统一 TDX/SEV-SNP/CCA 的迁移接口可避免每家一套 ABI;命名与语义仍在争论,离定型尚远。

查看原始标题[RFC PATCH v2 0/4] Add KVM API for confidential guest live migration
首次出现mm评审中KVM 邮件列表· 2026-09-21

21 篇补丁让 pXdp_get() 等在编译期折叠页表配置下不再强制产生无用 load,先适配 ptdump/effective_prot 并新增 mm_first_pgtable_level();Sashiko 提示两个 ERROR 宏定义问题。

影响:arm64 3 级页表与 ppc32 可省去无意义读入,也为后续代码大规模改用 ptep_get() 类助手清障。

查看原始标题[PATCH 00/21] mm: change behavior of pXdp_get()/pXd_page() in compile-time folded pgtable

Libvirt4 条精选

有新进展resctrl已合并libvirt-devel 邮件列表· 2026-09-21

v2 允许 cachetune/memorytune/energytune 及 monitor 省略 vcpus,在创建线程前把 QEMU 进程加入 resctrl 组,使 IOThread、worker、emulator 线程一并受控;该系列已合入。

影响:此前 resctrl 只按 vCPU 计账,遗漏 QEMU 线程消耗;整进程模式让分配贴近实际用量,但与 per-vCPU 模式不可混用。

查看原始标题[PATCH v2 0/4] resctrl: support whole-process allocations and monitoring
首次出现virbitmap评审中libvirt-devel 邮件列表· 2026-09-21

零长度位图的 map 为 NULL,而 virBitmapNewCopy()/SetAll()/ClearAll() 仍会对其调用 memcpy()/memset();补丁加入判空并新增测试用例。

影响:消除 libvirt 内部 UB,位图 API 在空位图边界更安全,回归可由 CI 捕获。

查看原始标题[PATCH] virbitmap: Avoid UB with zero sized bitmaps
首次出现remote评审中libvirt-devel 邮件列表· 2026-09-21

daemonStreamEvent() 全程持 priv->lock 却在错误路径关闭 client,close hook 在同线程再次取锁导致主循环自锁、RPC 无响应;补丁 1 调整加锁范围并附确定性测试。

影响:该回归自 9.2.0 起潜伏,9.5.0 与 master 同样受影响,只能重启 daemon 恢复;修复后单个 stream 出错不再拖垮整机 RPC。

查看原始标题[PATCH 0/2] remote: fix a daemon self-deadlock on the stream error path
首次出现block新提交虚机性能libvirt-devel 邮件列表· 2026-09-21

QEMU 的块延迟直方图边界为 uint64,libvirt 仍按 unsigned int 存储解析;补丁把 domain 配置、monitor 代码与 XML schema 统一为 unsigned long long 并用 64 位 JSON 数字序列化。

影响:边界上限突破 UINT32_MAX 纳秒,可用 QEMU 支持的更大取值;测试新增 5000000000 纳秒用例。

查看原始标题[PATCH] qemu: support 64-bit latency histogram boundaries
数据源 QEMU:lists.gnu.org mbox / GitLab · KVM:lore.kernel.org public-inbox Git · Libvirt:官方 HyperKitty / GitLab