Hi David and Igor, Thank you for your patience. It's been about a month since our last discussion, and I apologize for the delay.
This is v3 of the SPM (Specific Purpose Memory) patch. Following David's suggestion from v2 review, I've simplified the implementation significantly. Changes in v3: - Removed unnecessary RAMBlock traversal and RAM_SPM flag - Now directly iterates over NUMA nodes to update E820 entries - Added documentation in qemu-options.hx Use case reminder: This feature allows passing EFI_MEMORY_SP (Specific Purpose Memory) from host to guest VM, useful for memory reserved for specific PCI devices (e.g., GPU memory via VFIO-PCI). The SPM memory appears as E820_SOFT_RESERVED to the guest and is managed by device drivers rather than the OS memory allocator. Example usage: -object memory-backend-ram,size=8G,id=m0 -object memory-backend-file,size=8G,id=m1,mem-path=/dev/dax0.0 -numa node,nodeid=0,memdev=m0 -numa node,nodeid=1,memdev=m1,spm=on Please review. Thank you for your guidance on this implementation. Best regards, Jerry Huang
