)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":28271,"name":"Josephine Seifert","email":"josephine.seifert@cloudandheat.com","username":"josei"},"change_message_id":"86007533980824d56a838fab978cfe6d860cf6d3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b148381e_70260022","updated":"2025-11-12 13:58:47.000000000","message":"Hi I just started the review. One question is inline.","commit_id":"9d6a1ed6c6460f255d6bf26cbce8fafc302d1b91"},{"author":{"_account_id":35307,"name":"Taketani Ryo","email":"taketani.ryo@fujitsu.com","username":"r-taketn0517"},"change_message_id":"89cbc3c13e0ef7413ff2d2975b1e3a4bcab7294e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"287be782_69ac5160","updated":"2025-11-27 00:12:51.000000000","message":"I abandon this spec because it was decided at PTG to make this development specless and I have uploaded the implementation. (https://blueprints.launchpad.net/nova/+spec/generalize-sev-code)","commit_id":"9d6a1ed6c6460f255d6bf26cbce8fafc302d1b91"},{"author":{"_account_id":35307,"name":"Taketani Ryo","email":"taketani.ryo@fujitsu.com","username":"r-taketn0517"},"change_message_id":"64862f97a4a1cc807b20b7b97808c4395d4ab3f6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"c9cf3b61_31d77d4c","in_reply_to":"b148381e_70260022","updated":"2025-11-14 01:57:05.000000000","message":"Thank you for your review. Although it was decided at PTG[1] to make this development specless, I keep this spec open for discussion until I will publish the code.\n\n[1] https://etherpad.opendev.org/p/nova-2026.1-ptg#L706","commit_id":"9d6a1ed6c6460f255d6bf26cbce8fafc302d1b91"}],"specs/2026.1/approved/generalize-sev-code.rst":[{"author":{"_account_id":28271,"name":"Josephine Seifert","email":"josephine.seifert@cloudandheat.com","username":"josei"},"change_message_id":"86007533980824d56a838fab978cfe6d860cf6d3","unresolved":true,"context_lines":[{"line_number":70,"context_line":"  Before adding Arm CCA support, such a code should be modified with"},{"line_number":71,"context_line":"  ``Host.supports_mem_encryption()``."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"- Fix the usage of ``LibvirtDriver._get_mem_encryption_config()``."},{"line_number":74,"context_line":"  There are codes that the function is used for checking whether the VM"},{"line_number":75,"context_line":"  requests SEV, instead of VM memory encryption. VMs with SEV require"},{"line_number":76,"context_line":"  iommu, memory lockdown, etc. while Arm CCA does not need such treatment."}],"source_content_type":"text/x-rst","patch_set":4,"id":"bf5155a6_7f74378a","line":73,"updated":"2025-11-12 13:58:47.000000000","message":"Do I understand it correctly?:\nYou want to introduce a new general function ``Host.supports_mem_encryption()`` in ``nova.virt.libvirt.host``, which returns a ``MemEncryptionConfig`` object.\nAnd you will call this new function in the LibvirtDriver (and enable the driver to handle the new ``MemEncryptionConfig`` object).\n\nHow does this object should look like, if the Host supports multiple CC feature? E.g. a host, that supports SEV and SEV-ES (and in future maybe also SEV-SNP).","commit_id":"9d6a1ed6c6460f255d6bf26cbce8fafc302d1b91"},{"author":{"_account_id":35307,"name":"Taketani Ryo","email":"taketani.ryo@fujitsu.com","username":"r-taketn0517"},"change_message_id":"64862f97a4a1cc807b20b7b97808c4395d4ab3f6","unresolved":true,"context_lines":[{"line_number":70,"context_line":"  Before adding Arm CCA support, such a code should be modified with"},{"line_number":71,"context_line":"  ``Host.supports_mem_encryption()``."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"- Fix the usage of ``LibvirtDriver._get_mem_encryption_config()``."},{"line_number":74,"context_line":"  There are codes that the function is used for checking whether the VM"},{"line_number":75,"context_line":"  requests SEV, instead of VM memory encryption. VMs with SEV require"},{"line_number":76,"context_line":"  iommu, memory lockdown, etc. while Arm CCA does not need such treatment."}],"source_content_type":"text/x-rst","patch_set":4,"id":"dd71a30a_f5d38c04","line":73,"in_reply_to":"bf5155a6_7f74378a","updated":"2025-11-14 01:57:05.000000000","message":"\u003e You want to introduce a new general function `Host.supports_mem_encryption()` in `nova.virt.libvirt.host`, which returns a `MemEncryptionConfig` object.\n\nThis just add the abstraction function `supports_mem_encryption()` above `supports_amd_sev()` in `nova.virt.libvirt.host`. \n\n`_get_mem_encryption_config` in `nova.virt.libvirt.driver`[1] return `MemEncryptionConfig` object. The problem is that `_get_mem_encryption_config`  uses `supports_amd_sev` in order to check whether hosts have memory encryption capabilities. I will generalize it by replacing it with `supports_mem_encryption`.\n\n\n[1] https://github.com/openstack/nova/blob/b7d50570c7a79a38b0db6476ccb3c662b237f69b/nova/virt/libvirt/driver.py#L7680","commit_id":"9d6a1ed6c6460f255d6bf26cbce8fafc302d1b91"}]}
