KVM 補丁審查清單

  1. 補丁必須遵循 Linux 核心編碼風格提交補丁:將程式碼納入核心的必要指南

  2. 補丁應該基於 kvm.git master 分支。

  3. 如果補丁引入或修改了新的使用者空間 API:- API 必須在 權威的 KVM (基於核心的虛擬機器) API 文件 中記錄 - API 必須可以使用 KVM_CHECK_EXTENSION 發現

  4. 新狀態必須包括對儲存/恢復的支援。

  5. 新功能必須預設為關閉(使用者空間應明確請求它們)。效能改進可以並且應該預設為開啟。

  6. 新的 CPU 功能應該透過 KVM_GET_SUPPORTED_CPUID2 公開

  7. 模擬器更改應附帶 qemu-kvm.git kvm/test 目錄的單元測試。

  8. 更改應儘可能保持廠商中立。對通用程式碼的更改優於複製對廠商程式碼的更改。

  9. 同樣,更喜歡更改架構無關的程式碼,而不是更改架構相關的程式碼。

  10. 使用者/核心介面和訪客/主機介面必須是 64 位乾淨的(所有變數和大小自然地在 64 位上對齊;僅使用特定型別 - u64 而不是 ulong)。

  11. 新的訪客可見功能必須在硬體手冊中記錄,或者附帶文件。

  12. 功能必須能夠可靠地應對重置和 kexec - 例如,共享主機/訪客記憶體必須取消共享,以防止主機寫入訪客未為此目的保留的訪客記憶體。