The final session in the memory-management track at the 2022 Linux Storage, Filesystem, Memory-management and BPF Summit (LSFMM) was run remotely by James Gowans and David Woodhouse. It was titled "user-space control of memory mappings", with a subtitle of "letting guest memory and state survive kexec". Some options were discussed, but the real work is clearly yet to be done.
2022 年 Linux 存储、文件系统、内存管理和 BPF 峰会(LSFMM)的内存管理分会最后一个会议由 James Gowans 和 David Woodhouse 远程主持,主题为“用户空间控制内存映射(user-space control of memory mappings)”,副标题是“让客户机内存和状态在 kexec 后继续存在(letting guest memory and state survive kexec)”。会议讨论了一些实现方案,但显然真正的工作还远未完成。
The use case in question, Gowans began, is a live update of a hypervisor done with the kernel's kexec functionality. To carry this out, the state of all running virtual machines is serialized to persistent storage, then kexec is used to boot into the updated hypervisor. After that, the virtual machines can all be restarted. The desire is to preserve the state of guest memory over the reboot, which means this memory cannot be managed by the host kernel in the traditional way; instead, the kernel should stay away from that memory and let user space manage its allocation to virtual machines. They have been looking at "sidecar virtual machines" as a way to implement this functionality.
Gowans 介绍说,该用例是利用内核的 kexec 功能实现虚拟机监控程序(hyper