)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"77e1888e99ff0bbc15a288c5e4a4b21008522346","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add support to boot from UEFI images"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Libvirt 1.2.8 version has included support to boot UEFI instances using OVMF,"},{"line_number":10,"context_line":"therefore nova compute needs to be able to boot instances using UEFI images."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"bp boot-from-uefi"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a8ffd7b_c1d6bbf0","line":9,"updated":"2015-12-02 09:32:15.000000000","message":"The libvirt release letter mentions in version 1.2.9 [1]\n\n    \"domaincaps: Expose UEFI capability\"\n\nOr did I look for the wrong entry?\n\n[1] https://libvirt.org/news-2014.html","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"2ce784bb98fd6eca92a1fb1918d62a2582ee5345","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Add support to boot from UEFI images"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Libvirt 1.2.8 version has included support to boot UEFI instances using OVMF,"},{"line_number":10,"context_line":"therefore nova compute needs to be able to boot instances using UEFI images."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"bp boot-from-uefi"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a8ffd7b_221d4062","line":9,"in_reply_to":"9a8ffd7b_c1d6bbf0","updated":"2015-12-02 11:35:00.000000000","message":"Yes. You are right. it is a mistake.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"}],"specs/mitaka/approved/boot-from-uefi.rst":[{"author":{"_account_id":16986,"name":"Shuquan Huang","email":"shuquan.huang@live.com","username":"shuquan"},"change_message_id":"9760101e9aa238a5787ebecc12b36ceb2c7e162a","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/nova/+spec/boot-from-uefi"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Currently (Q4\u002715) OpenStack does not enable UEFI images to be booted via the"},{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"stedy trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_96d3e1d4","line":14,"updated":"2015-10-22 09:38:14.000000000","message":"Is it better to use release cycle here?","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/nova/+spec/boot-from-uefi"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"Currently (Q4\u002715) OpenStack does not enable UEFI images to be booted via the"},{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"stedy trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_a74822cd","line":14,"in_reply_to":"3a29b11f_96d3e1d4","updated":"2015-10-22 14:00:15.000000000","message":"Yes, I\u0027d prefer \"Liberty\" here","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":16986,"name":"Shuquan Huang","email":"shuquan.huang@live.com","username":"shuquan"},"change_message_id":"9760101e9aa238a5787ebecc12b36ceb2c7e162a","unresolved":false,"context_lines":[{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"stedy trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"},{"line_number":18,"context_line":"and Clear Linux is already in this category.  Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_d69b9916","line":18,"updated":"2015-10-22 09:38:14.000000000","message":"There are 2 spaces before \u0027Given this.\u0027","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":16986,"name":"Shuquan Huang","email":"shuquan.huang@live.com","username":"shuquan"},"change_message_id":"9760101e9aa238a5787ebecc12b36ceb2c7e162a","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS, VM boot is supported by libvirt since version 1.2.8."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"Problem description"},{"line_number":27,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":28,"context_line":"Platform vendors have been increasingly adopting UEFI for the platform firmware"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_d6c2b9e8","line":25,"updated":"2015-10-22 09:38:14.000000000","message":"Better to add some introduction about OVMF.","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Use Cases"},{"line_number":36,"context_line":"----------"},{"line_number":37,"context_line":"1. User wants to Launch a VM using a specific flavor and their own UEFI image."},{"line_number":38,"context_line":"In this case the user needs to be able to tell Nova everything that is needed"},{"line_number":39,"context_line":"to launch the desired VM. The only additional information that should be"},{"line_number":40,"context_line":"required is an extra spec indicating that the specified Image is a UEFI image"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_879ba617","line":37,"range":{"start_line":37,"start_character":17,"end_line":37,"end_character":23},"updated":"2015-10-22 14:00:15.000000000","message":"nit: s/Launch/launch/","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":37,"context_line":"1. User wants to Launch a VM using a specific flavor and their own UEFI image."},{"line_number":38,"context_line":"In this case the user needs to be able to tell Nova everything that is needed"},{"line_number":39,"context_line":"to launch the desired VM. The only additional information that should be"},{"line_number":40,"context_line":"required is an extra spec indicating that the specified Image is a UEFI image"},{"line_number":41,"context_line":"and needs to be treated as such. Being treated as such means that the Nova"},{"line_number":42,"context_line":"scheduler would filter the possible compute hosts based on the extra spec, pass"},{"line_number":43,"context_line":"the extra spec to the libvirt driver which would then use this information to"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_e7613a06","line":40,"range":{"start_line":40,"start_character":56,"end_line":40,"end_character":61},"updated":"2015-10-22 14:00:15.000000000","message":"nit: s/Image/image/","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":43,"context_line":"the extra spec to the libvirt driver which would then use this information to"},{"line_number":44,"context_line":"locate and use the correct firmware for VM boot."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"2. User has a UEFI image and wants to make it availible in Glance for general"},{"line_number":47,"context_line":"use. In this case we want the user to be able to upload the image to Glance in"},{"line_number":48,"context_line":"the same way they do today. However, we will need to enable Glance to recognize"},{"line_number":49,"context_line":"that the image being uploaded is UEFI or not and add the appropriate extra spec"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_e7285a9c","line":46,"range":{"start_line":46,"start_character":46,"end_line":46,"end_character":55},"updated":"2015-10-22 14:00:15.000000000","message":"nit: available","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":47,"context_line":"use. In this case we want the user to be able to upload the image to Glance in"},{"line_number":48,"context_line":"the same way they do today. However, we will need to enable Glance to recognize"},{"line_number":49,"context_line":"that the image being uploaded is UEFI or not and add the appropriate extra spec"},{"line_number":50,"context_line":"when it is a UEFI image."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"3. User wants to lauch a VM based on a specific flavor and UEFI image. The"},{"line_number":53,"context_line":"image is in Glance. Given user cases 1 and 2 have been implemented, the user"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_2df5d3eb","line":50,"updated":"2015-10-22 14:00:15.000000000","message":"You need to reference a Glance spec to do this then","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8726,"name":"Victor Morales","email":"chipahuac@hotmail.com","username":"electrocucaracha"},"change_message_id":"06b353e2a6b6532a4999cb6c9b105ddda8a262c6","unresolved":false,"context_lines":[{"line_number":47,"context_line":"use. In this case we want the user to be able to upload the image to Glance in"},{"line_number":48,"context_line":"the same way they do today. However, we will need to enable Glance to recognize"},{"line_number":49,"context_line":"that the image being uploaded is UEFI or not and add the appropriate extra spec"},{"line_number":50,"context_line":"when it is a UEFI image."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"3. User wants to lauch a VM based on a specific flavor and UEFI image. The"},{"line_number":53,"context_line":"image is in Glance. Given user cases 1 and 2 have been implemented, the user"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a26ad4f_b103390f","line":50,"in_reply_to":"3a29b11f_2df5d3eb","updated":"2015-10-28 00:06:32.000000000","message":"Well our initial approach for this was using the image metadata.","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":49,"context_line":"that the image being uploaded is UEFI or not and add the appropriate extra spec"},{"line_number":50,"context_line":"when it is a UEFI image."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"3. User wants to lauch a VM based on a specific flavor and UEFI image. The"},{"line_number":53,"context_line":"image is in Glance. Given user cases 1 and 2 have been implemented, the user"},{"line_number":54,"context_line":"needs not do anything special to launch a VM based on an image is Glance (UEFI"},{"line_number":55,"context_line":"or not)."}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_ade1e32b","line":52,"range":{"start_line":52,"start_character":17,"end_line":52,"end_character":22},"updated":"2015-10-22 14:00:15.000000000","message":"nit: launch","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":50,"context_line":"when it is a UEFI image."},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"3. User wants to lauch a VM based on a specific flavor and UEFI image. The"},{"line_number":53,"context_line":"image is in Glance. Given user cases 1 and 2 have been implemented, the user"},{"line_number":54,"context_line":"needs not do anything special to launch a VM based on an image is Glance (UEFI"},{"line_number":55,"context_line":"or not)."},{"line_number":56,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_6dd66b50","line":53,"range":{"start_line":53,"start_character":26,"end_line":53,"end_character":30},"updated":"2015-10-22 14:00:15.000000000","message":"nit: use","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":51,"context_line":""},{"line_number":52,"context_line":"3. User wants to lauch a VM based on a specific flavor and UEFI image. The"},{"line_number":53,"context_line":"image is in Glance. Given user cases 1 and 2 have been implemented, the user"},{"line_number":54,"context_line":"needs not do anything special to launch a VM based on an image is Glance (UEFI"},{"line_number":55,"context_line":"or not)."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Project Priority"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_0dc9f7ab","line":54,"range":{"start_line":54,"start_character":63,"end_line":54,"end_character":65},"updated":"2015-10-22 14:00:15.000000000","message":"nit: image in Glance ?","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":63,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"We offer a solution for including UEFI images in OpenStack as first class"},{"line_number":66,"context_line":"citizens. Enabling their recognision on upload to Glance through their being"},{"line_number":67,"context_line":"scheduled by Nova and launched onto a Nova compute host via the libvirt driver."},{"line_number":68,"context_line":"For x86_64 images we will use the battle hardened OVMF (Open Virtual Machine"},{"line_number":69,"context_line":"Firmware) a sub-project of Intel\u0027s EFI Development Kit II (edk2), which enables"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_cdc77f94","line":66,"range":{"start_line":66,"start_character":25,"end_line":66,"end_character":36},"updated":"2015-10-22 14:00:15.000000000","message":"nit: recognition, \"through to their\"","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":16986,"name":"Shuquan Huang","email":"shuquan.huang@live.com","username":"shuquan"},"change_message_id":"9760101e9aa238a5787ebecc12b36ceb2c7e162a","unresolved":false,"context_lines":[{"line_number":127,"context_line":""},{"line_number":128,"context_line":"Testing"},{"line_number":129,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Documentation Impact"},{"line_number":132,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":133,"context_line":"Yes, some minor additions for launching a UEFI image with Nova, note on Glance auto-detect of"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_cc0237b4","line":130,"updated":"2015-10-22 09:38:14.000000000","message":"I guess we need add some unit tests.","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":127,"context_line":""},{"line_number":128,"context_line":"Testing"},{"line_number":129,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"Documentation Impact"},{"line_number":132,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":133,"context_line":"Yes, some minor additions for launching a UEFI image with Nova, note on Glance auto-detect of"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_eda11b95","line":130,"in_reply_to":"3a29b11f_cc0237b4","updated":"2015-10-22 14:00:15.000000000","message":"Unit tests are assumed. I\u0027d say we also need a couple of Tempest tests.","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"ad9d27fa20216c87793e543d6f75e20c5a83515b","unresolved":false,"context_lines":[{"line_number":146,"context_line":"Optional section for Mitaka intended to be used each time the spec"},{"line_number":147,"context_line":"is updated to describe new design, API or any database schema"},{"line_number":148,"context_line":"updated. Useful to let reader understand what\u0027s happened along the"},{"line_number":149,"context_line":"time."},{"line_number":150,"context_line":""},{"line_number":151,"context_line":".. list-table:: Revisions"},{"line_number":152,"context_line":"   :header-rows: 1"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a29b11f_6dbc2bbb","line":149,"updated":"2015-10-22 14:00:15.000000000","message":"Delete this para","commit_id":"5f04ea05f893809811ca5e521b2547a58f2184f7"},{"author":{"_account_id":14274,"name":"XinXiaohui","email":"xiaohui.xin@intel.com","username":"XinXiaohui"},"change_message_id":"da60ec0ab4770f5461d55e526bf200a227373fc6","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":"OpenStack Liberty Release does not enable UEFI images to be booted via the"},{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"stedy trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"},{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da85f559_53d09dc9","line":16,"updated":"2015-11-13 21:50:26.000000000","message":"stedy-\u003esteady","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"781745fb4cf01904411295377823333f7100d939","unresolved":false,"context_lines":[{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS, VM boot is supported by libvirt since version 1.2.8."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"OVMF is a port of Intel\u0027s tianocore firmware to qemu virtual machine, in other"},{"line_number":27,"context_line":"words this project enables UEFI support for Virtual Machines."}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba8a016a_7d14409f","line":24,"updated":"2015-11-18 13:39:24.000000000","message":"-\u003e \"... replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since version 1.2.8\"","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"0fec1026bbf30fa0d48d4cebed3c50bb52af1531","unresolved":false,"context_lines":[{"line_number":37,"context_line":""},{"line_number":38,"context_line":"Use Cases"},{"line_number":39,"context_line":"----------"},{"line_number":40,"context_line":"1. User wants to launch a VM using a specific flavor and their own UEFI image."},{"line_number":41,"context_line":"In this case the user needs to be able to tell Nova everything that is needed"},{"line_number":42,"context_line":"to launch the desired VM. The only additional information that should be"},{"line_number":43,"context_line":"required is an extra spec indicating that the specified image is a UEFI image"}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba8a016a_e89cccc1","line":40,"updated":"2015-11-19 02:19:43.000000000","message":"I think we should just use image properties for this use-case. Whether use UEFI is based on the image.","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"0fec1026bbf30fa0d48d4cebed3c50bb52af1531","unresolved":false,"context_lines":[{"line_number":42,"context_line":"to launch the desired VM. The only additional information that should be"},{"line_number":43,"context_line":"required is an extra spec indicating that the specified image is a UEFI image"},{"line_number":44,"context_line":"and needs to be treated as such. Being treated as such means that the Nova"},{"line_number":45,"context_line":"scheduler would filter the possible compute hosts based on the extra spec, pass"},{"line_number":46,"context_line":"the extra spec to the libvirt driver which would then use this information to"},{"line_number":47,"context_line":"locate and use the correct firmware for VM boot."},{"line_number":48,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba8a016a_48b4f833","line":45,"updated":"2015-11-19 02:19:43.000000000","message":"I don\u0027t think we need based on something to scheduing the instance. We just need ensure all the compute-node have UEFI BIOS file.","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":14274,"name":"XinXiaohui","email":"xiaohui.xin@intel.com","username":"XinXiaohui"},"change_message_id":"da60ec0ab4770f5461d55e526bf200a227373fc6","unresolved":false,"context_lines":[{"line_number":50,"context_line":"use. In this case we want the user to be able to upload the image to Glance in"},{"line_number":51,"context_line":"the same way they do today. However, we will need to enable Glance to recognize"},{"line_number":52,"context_line":"that the image being uploaded is UEFI or not and add the appropriate extra spec"},{"line_number":53,"context_line":"when it is a UEFI image."},{"line_number":54,"context_line":""},{"line_number":55,"context_line":"3. User wants to launch a VM based on a specific flavor and UEFI image. The"},{"line_number":56,"context_line":"image is in Glance. Given use cases 1 and 2 have been implemented, the user"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da85f559_094bc22c","line":53,"updated":"2015-11-13 21:50:26.000000000","message":"To distinguish the UEFI image depends on the different Qemu image format. May be implemented first with qcow2 format is OK.","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":14274,"name":"XinXiaohui","email":"xiaohui.xin@intel.com","username":"XinXiaohui"},"change_message_id":"da60ec0ab4770f5461d55e526bf200a227373fc6","unresolved":false,"context_lines":[{"line_number":55,"context_line":"3. User wants to launch a VM based on a specific flavor and UEFI image. The"},{"line_number":56,"context_line":"image is in Glance. Given use cases 1 and 2 have been implemented, the user"},{"line_number":57,"context_line":"needs not do anything special to launch a VM based on an image is Glance (UEFI"},{"line_number":58,"context_line":"or not)."},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Project Priority"},{"line_number":61,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":3,"id":"da85f559_ae7ddce8","line":58,"updated":"2015-11-13 21:50:26.000000000","message":"an image is Glance (UEFI or not) -\u003e an image in Glance whether UEFI or not.","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"0fec1026bbf30fa0d48d4cebed3c50bb52af1531","unresolved":false,"context_lines":[{"line_number":78,"context_line":"per defined image."},{"line_number":79,"context_line":""},{"line_number":80,"context_line":"This way, when operator uploads an UEFI bootable image he/she can update the"},{"line_number":81,"context_line":"metadata value specifying the path of firmware used to boot the image."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"When user launch a VM from an UEFI image, the XML generated would include"},{"line_number":84,"context_line":"proper values to use firmware previously defined by the operator."}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba8a016a_c8f548ed","line":81,"updated":"2015-11-19 02:19:43.000000000","message":"I don\u0027t think we should specify the path in the image, that exposes the cluster detail, there may have security problem.\n\nWe just need a flag to specify whether the image need UEFI or not.\n\nAnd we probably need configure option in nova, to specify the UEFI BIOS file path on compute node.","commit_id":"d0a0a41f99e5792a18a90f9202fc5c41f893dd0d"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"103d5f6809cb8aeb3048657b4b8eed899e5f0732","unresolved":false,"context_lines":[{"line_number":42,"context_line":"needs to be able to tell Nova everything that is needed to launch the desired"},{"line_number":43,"context_line":"VM. The only additional information that should be required is new image"},{"line_number":44,"context_line":"properties indicating that the specified image is a UEFI image and needs to"},{"line_number":45,"context_line":"be treated as such."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"Project Priority"},{"line_number":48,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_ee0ccaed","line":45,"updated":"2015-11-19 09:44:24.000000000","message":"I don\u0027t really think we should be letting users provide their own firmware images, whether UEFI or not. The QEMU \u003c-\u003e Firmware integration is really part of the base virtualization platform and versions of QEMU are going to have dependencies on particular min versions of OVMF and/or particular build configurations. A tenant user is not exposed to details of the QEMU used in the virtualization platform, so are not well placed to have the info needed to ensure they provide a compatible firmware image.  So IMHO letting users provide firmware is a bad idea and will lead to obscure / difficult to debug problems.   Also note the HyperV driver in Nova already supports UEFI and does not allow replacement of the firmware","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"d46aa08a6f759e9bfcd82e9fd168d18defaf5320","unresolved":false,"context_lines":[{"line_number":42,"context_line":"needs to be able to tell Nova everything that is needed to launch the desired"},{"line_number":43,"context_line":"VM. The only additional information that should be required is new image"},{"line_number":44,"context_line":"properties indicating that the specified image is a UEFI image and needs to"},{"line_number":45,"context_line":"be treated as such."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"Project Priority"},{"line_number":48,"context_line":"-----------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_4ddcf172","line":45,"in_reply_to":"ba8a016a_ee0ccaed","updated":"2015-11-19 13:05:12.000000000","message":"Got it! Thanks, Daniel! So this use case should be \"User wants to launch a VM with UEFI....new image properties indicating which kind of firmware type will be used, uefi or bios.\"","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"103d5f6809cb8aeb3048657b4b8eed899e5f0732","unresolved":false,"context_lines":[{"line_number":47,"context_line":"Project Priority"},{"line_number":48,"context_line":"-----------------"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"None"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"Proposed change"},{"line_number":53,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_4ee4f6df","line":50,"updated":"2015-11-19 09:44:24.000000000","message":"Delete this section it is obsolete","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"103d5f6809cb8aeb3048657b4b8eed899e5f0732","unresolved":false,"context_lines":[{"line_number":62,"context_line":"* \u0027img_uefi\u0027: fields.FlexibleBooleanField()"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"If true, this will indicate the UEFI image. If the property is not set,"},{"line_number":65,"context_line":"the image will be not treated as UEFI image."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"The following is the new config option."},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_0ee02ef9","line":65,"updated":"2015-11-19 09:44:24.000000000","message":"I think we should just provide \"hw_firmware_type\" property which accepts the values \"bios\" or \"uefi\" and let the virtualization platform determine everything else.","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"d46aa08a6f759e9bfcd82e9fd168d18defaf5320","unresolved":false,"context_lines":[{"line_number":62,"context_line":"* \u0027img_uefi\u0027: fields.FlexibleBooleanField()"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"If true, this will indicate the UEFI image. If the property is not set,"},{"line_number":65,"context_line":"the image will be not treated as UEFI image."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"The following is the new config option."},{"line_number":68,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_ad3a3d97","line":65,"in_reply_to":"ba8a016a_0ee02ef9","updated":"2015-11-19 13:05:12.000000000","message":"Ok.","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"103d5f6809cb8aeb3048657b4b8eed899e5f0732","unresolved":false,"context_lines":[{"line_number":64,"context_line":"If true, this will indicate the UEFI image. If the property is not set,"},{"line_number":65,"context_line":"the image will be not treated as UEFI image."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"The following is the new config option."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* os_uefi_loader_path"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_2e8ad21b","line":67,"updated":"2015-11-19 09:44:24.000000000","message":"Presumably you mean a nova.conf config option ?","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"d46aa08a6f759e9bfcd82e9fd168d18defaf5320","unresolved":false,"context_lines":[{"line_number":64,"context_line":"If true, this will indicate the UEFI image. If the property is not set,"},{"line_number":65,"context_line":"the image will be not treated as UEFI image."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"The following is the new config option."},{"line_number":68,"context_line":""},{"line_number":69,"context_line":"* os_uefi_loader_path"},{"line_number":70,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_cd6461ba","line":67,"in_reply_to":"ba8a016a_2e8ad21b","updated":"2015-11-19 13:05:12.000000000","message":"Yes. it is a config option in nova.conf file.","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"ac61e3fa0e52f06b61163c2cabb97d3d7668bb47","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"This option will specify the path of UEFI bios file in computer node. The"},{"line_number":72,"context_line":"default value should be \"/usr/share/qemu/OVMF.fd\". If the UEFI bios file"},{"line_number":73,"context_line":"could not be found, VM boot will fail."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Alternatives"},{"line_number":76,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_0e5d8e78","line":73,"updated":"2015-11-19 09:47:25.000000000","message":"The default recommended location actually varies per guest arch\n\n /usr/share/OVMF/OVMF_CODE.fd      (x86_64)\n /usr/share/AAVMF/AAVMF_CODE.fd  (aarch64)","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"d46aa08a6f759e9bfcd82e9fd168d18defaf5320","unresolved":false,"context_lines":[{"line_number":70,"context_line":""},{"line_number":71,"context_line":"This option will specify the path of UEFI bios file in computer node. The"},{"line_number":72,"context_line":"default value should be \"/usr/share/qemu/OVMF.fd\". If the UEFI bios file"},{"line_number":73,"context_line":"could not be found, VM boot will fail."},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"Alternatives"},{"line_number":76,"context_line":"------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"ba8a016a_0d1589e3","line":73,"in_reply_to":"ba8a016a_0e5d8e78","updated":"2015-11-19 13:05:12.000000000","message":"Yes. it will be added into this section.","commit_id":"a69ca9b7a6046080ba09f48cb4622e77067e6724"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"2759cb5befa42a97d69c528993b330c0daf18c72","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used.\t"},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_98df7239","line":61,"updated":"2015-11-19 13:54:38.000000000","message":"You\u0027ve got some trailing whitespace on lines 56 and 61.\n\nAlso note we\u0027d use  EnumField rather than StringField","commit_id":"9fa3700c63e8749fdc744fb09f3d8c0e0fa25310"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"2759cb5befa42a97d69c528993b330c0daf18c72","unresolved":false,"context_lines":[{"line_number":134,"context_line":""},{"line_number":135,"context_line":"The primary work items are"},{"line_number":136,"context_line":""},{"line_number":137,"context_line":"* Add the \u0027img_uefi\u0027 field to the ImageMetaProps object"},{"line_number":138,"context_line":"* Add the new configuration option \u0027os_uefi_loader_path\u0027"},{"line_number":139,"context_line":"* Update the libvirt guest XML configuration when the UEFI image"},{"line_number":140,"context_line":"  property is present"}],"source_content_type":"text/x-rst","patch_set":6,"id":"ba8a016a_b8bd96d9","line":137,"updated":"2015-11-19 13:54:38.000000000","message":"This needs changing now.","commit_id":"9fa3700c63e8749fdc744fb09f3d8c0e0fa25310"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/nova/+spec/boot-from-uefi"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"OpenStack Liberty Release does not enable UEFI images to be booted via the"},{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"steady trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_46f43886","line":14,"updated":"2015-12-01 21:36:04.000000000","message":"I\u0027d drop the \u0027Liberty\u0027 part of this.  I\u0027d just say:\n\n\"The nova compute libvirt driver does not support booting from UEFI images.\"","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"https://blueprints.launchpad.net/nova/+spec/boot-from-uefi"},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"OpenStack Liberty Release does not enable UEFI images to be booted via the"},{"line_number":15,"context_line":"Nova compute libvirt driver. This is a problem because there is a slow but"},{"line_number":16,"context_line":"steady trend for OSes to move to the UEFI format and in some cases to make the"},{"line_number":17,"context_line":"UEFI format their only format. Microsoft Windows is moving in this direction"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_29d6c127","line":14,"in_reply_to":"9a8ffd7b_46f43886","updated":"2015-12-10 11:17:00.000000000","message":"Nit: +1","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_860f8087","line":21,"updated":"2015-12-01 21:36:04.000000000","message":"Any idea if ppc64/s390x is being worked on/supported for pKVM and zKVM, respectively?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"2f03fdc375fb149f3650b7a6bd2b94971138aa61","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_e2d2d8ff","line":21,"in_reply_to":"9a8ffd7b_220c60eb","updated":"2015-12-02 11:46:29.000000000","message":"Well for most firmwares we don\u0027t need to specify a path, since the QEMU default is fine. At this time its only really UEFI we need to know paths for since there\u0027s no standard distro location at this time. So current name is probably ok IMHO","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"d5ecfdf2a2d4cb91644c96d46843c84772c824c1","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_220c60eb","line":21,"in_reply_to":"9a8ffd7b_684d6c98","updated":"2015-12-02 11:40:33.000000000","message":"@Daniel: Then the new config option in line 65 should be named differently too, I guess? Maybe:\n\n    os_fw_loader_path\n\ninstead of `os_uefi_loader_path`.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_6ceb5679","line":21,"in_reply_to":"9a8ffd7b_860f8087","updated":"2015-12-02 07:44:36.000000000","message":"For other hypervisors and arch, if they could not support UEFI, they can ignore the image metadata \"hw_firmware_type\".","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"1a3ca60c8271c9235b5280fdb1af24976d80479e","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_de969693","line":21,"in_reply_to":"9a8ffd7b_860f8087","updated":"2015-12-02 08:58:57.000000000","message":"I\u0027m going to check with the libvirt on s390x folks.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"89fa29dda5e15122dd9c0d7ca7b760b7a6b6323d","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_684d6c98","line":21,"in_reply_to":"9a8ffd7b_860f8087","updated":"2015-12-02 11:00:23.000000000","message":"The only architectures which care about UEFI today are x86 and Arm64. The other architectures all have their own custom firmwares and i\u0027ve not seen any sign of them porting to UEFI.\n\nOne reason why I pushed for \u0027hw_firmware_type\u0027 rather than \u0027hw_uefi\u003dyes|no\u0027  is precisely because those other architectures have their own firmware options available, so we can reference them by name in future if desired.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"6c2f69c60fa4d341f8dffcfe97a9ce160921f307","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_c654f155","line":21,"in_reply_to":"9a8ffd7b_860f8087","updated":"2015-12-03 22:38:16.000000000","message":"pKVM is investigation UEFI support so we shouldn\u0027t exclude that as an option in the future.  I\u0027m not suggesting we hold anything up.  Just stating that we shouldn\u0027t make too many assumptions.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":11303,"name":"Markus Zoeller (markus_z)","email":"mzoeller@linux.vnet.ibm.com","username":"mzoeller"},"change_message_id":"5324712bb737abc591d7086fe8d2936c62182953","unresolved":false,"context_lines":[{"line_number":18,"context_line":"and Clear Linux is already in this category. Given this, we propose enabling"},{"line_number":19,"context_line":"UEFI boot with the libvirt driver. Additionally, we propose using the well"},{"line_number":20,"context_line":"tested and battle hardened Open Virtual Machine Firmware (OVMF) as the VM"},{"line_number":21,"context_line":"firmware for x86_64."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Unified Extensible Firmware Interface (UEFI) is a standard firmware designed"},{"line_number":24,"context_line":"to replace BIOS. Booting a VM using UEFI/OVMF is supported by libvirt since"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_4b5418fd","line":21,"in_reply_to":"9a8ffd7b_de969693","updated":"2015-12-02 13:48:46.000000000","message":"@Ren: UEFI is not supported/needed for the s390x architecture. I just got the confirmation from the libvirt s390 folks. So please ensure that the code will reflect that.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":47,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Add missing elements when generating XML definition in libvirt driver to"},{"line_number":50,"context_line":"support OVMF firmware. Add also a new metadata value to specify which"},{"line_number":51,"context_line":"firmware type will be used. In addition, an new config option needs to"},{"line_number":52,"context_line":"be added into nova.conf file to specify the path of UEFI firmware."},{"line_number":53,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_064ab0ac","line":50,"updated":"2015-12-01 21:36:04.000000000","message":"s/metadata/image metadata/ ?\n\nThere are lots of \u0027metadata\u0027 values in nova, so it\u0027s good to be specific.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":47,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Add missing elements when generating XML definition in libvirt driver to"},{"line_number":50,"context_line":"support OVMF firmware. Add also a new metadata value to specify which"},{"line_number":51,"context_line":"firmware type will be used. In addition, an new config option needs to"},{"line_number":52,"context_line":"be added into nova.conf file to specify the path of UEFI firmware."},{"line_number":53,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_2cd78ec0","line":50,"in_reply_to":"9a8ffd7b_064ab0ac","updated":"2015-12-02 07:44:36.000000000","message":"Yes. it is image metadata.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":47,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Add missing elements when generating XML definition in libvirt driver to"},{"line_number":50,"context_line":"support OVMF firmware. Add also a new metadata value to specify which"},{"line_number":51,"context_line":"firmware type will be used. In addition, an new config option needs to"},{"line_number":52,"context_line":"be added into nova.conf file to specify the path of UEFI firmware."},{"line_number":53,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_29bd61d7","line":50,"in_reply_to":"9a8ffd7b_2cd78ec0","updated":"2015-12-10 11:17:00.000000000","message":"Nit: good to make that clear","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9d01df106c018eae615617195950ca970b30e2a","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_c059fc36","line":61,"updated":"2015-11-23 13:20:53.000000000","message":"This is inconsistent with the already approved spec:\nhttp://specs.openstack.org/openstack/nova-specs/specs/mitaka/approved/hyper-v-uefi-secureboot.html\n\nIf we want to talk this approach, we should first update the existing spec, and make this depend on that.\n\nIt includes both flavor and image properties, it would be good to keep this consistent.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"89fa29dda5e15122dd9c0d7ca7b760b7a6b6323d","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_089f0004","line":61,"in_reply_to":"9a8ffd7b_267814c4","updated":"2015-12-02 11:00:23.000000000","message":"On x86 there\u0027s only two machines types and both support UEFI.  On non-x86 many machines types won\u0027t support UEFI and so QEMU will just crash \u0026 burn in some fun way","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_267814c4","line":61,"in_reply_to":"ba8a016a_49dbf7ed","updated":"2015-12-01 21:36:04.000000000","message":"@Daniel, are there machine types that won\u0027t support UEFI so if we try to boot with those I\u0027m assuming libvirt will fail, and hopefully in some way that would be obvious in the logs.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"1198f09a1ef5cf903cdff284d177e7d816a9127d","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_135be7f7","line":61,"in_reply_to":"ba8a016a_49dbf7ed","updated":"2015-12-01 14:52:29.000000000","message":"OK, I was mixing up secure boot and UEFI here.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"c234ed42c12895e70038c39dc11996834d1133c1","unresolved":false,"context_lines":[{"line_number":58,"context_line":"This indicates that which kind of firmware type will be used to boot VM."},{"line_number":59,"context_line":"This property can be set to \u0027uefi\u0027 or \u0027bios\u0027. \u0027uefi\u0027 will indicate that"},{"line_number":60,"context_line":"uefi firmware will be used. If the property is not set, \u0027bios\u0027 firmware"},{"line_number":61,"context_line":"will be used."},{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_49dbf7ed","line":61,"in_reply_to":"ba8a016a_c059fc36","updated":"2015-11-23 14:13:29.000000000","message":"It isn\u0027t actually inconsistent with the hyperv spec, rather it is complementary - the hyperv spec was actually designed to be compatible with existing QEMU practice.\n\nFirst of all, we have an existing image property \"hw_machine_type\" which is the name of a base board. The base board definition is basically a short hand for a arbitrarily defined set of features, one of which is the firmware type. So some QEMU machine types will have a BIOS firmware by default, other QEMU machine types will have a UEFI firmware by default. \n\nThe hyperv spec wanted to provide secure boot feature. A pre-requisite for that feature is to have an UEFI firmware. So it makes use of the existing \u0027hw_machine_type\u0027 field QEMU was already using, to indicate the \"gen2\u0027 Hyper-V machine type which uses UEFI by default instead of BIOS.  In addition to that, it defines a new os_secure_boot image property for controlling aspects of secure boot. This spec is not considering secure boot at all, so consideration of the os_secure_boot property is tangential to the discussion.  There are other reasons for wanting UEFI which are not secure boot related - eg Mac OS-X only works with UEFI, and VGA device assignment is much saner with UEFI, and a number of other things too.\n\nNow some machine types are flexible and can use either BIOS or UEFI. That is what this spec is attempting to address - it defines the new  hw_firmware_type field as a way to override what the default firmeware type is. So eg with x86 QEMU the default \"piix4\" machine type includes BIOS, and this hw_firmware_type property lets us switch it to UEFI.  If we don\u0027t have this property, then the only option would be to choose a completely different machine type which uses UEFI as the default. This is quite undesirable, as it will change many other aspects of the virtual hardware.\n\nIOW I don\u0027t see any need to update the existing hyperv spec. This proposal is a complementary piece of work that doesn\u0027t invalidate what\u0027s approved for secure boot.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6b18733e4e6ea43e7ab305cde44598cc575ec79d","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* os_uefi_loader_path"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"This option will specify the path of UEFI firmware file in computer node."},{"line_number":68,"context_line":"The default value should variy per guest arch (e.g."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_8d4bf086","line":65,"updated":"2015-12-02 15:18:38.000000000","message":"I\u0027d prefer us not having this config path, it seems like it\u0027s just opening up to people getting things wrong. We should do some standard search.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* os_uefi_loader_path"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"This option will specify the path of UEFI firmware file in computer node."},{"line_number":68,"context_line":"The default value should variy per guest arch (e.g."}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_89957541","line":65,"in_reply_to":"7a740942_998dee7d","updated":"2015-12-10 11:17:00.000000000","message":"+1 for just detecting things here.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":12898,"name":"Tony Breeds","email":"tony@bakeyournoodle.com","username":"tonyb"},"change_message_id":"6c2f69c60fa4d341f8dffcfe97a9ce160921f307","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"The following is the new config option in nova.conf file."},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* os_uefi_loader_path"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"This option will specify the path of UEFI firmware file in computer node."},{"line_number":68,"context_line":"The default value should variy per guest arch (e.g."}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_998dee7d","line":65,"in_reply_to":"9a8ffd7b_8d4bf086","updated":"2015-12-03 22:38:16.000000000","message":"I agree.  I don\u0027t think a config option is needed.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":64,"context_line":""},{"line_number":65,"context_line":"* os_uefi_loader_path"},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"This option will specify the path of UEFI firmware file in computer node."},{"line_number":68,"context_line":"The default value should variy per guest arch (e.g."},{"line_number":69,"context_line":"\"/usr/share/OVMF/OVMF_CODE.fd\" for x86_64, and"},{"line_number":70,"context_line":"\"/usr/share/AAVMF/AAVMF_CODE.fd\" for aarch64). If the UEFI firmware file"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_a695e4e4","line":67,"updated":"2015-12-01 21:36:04.000000000","message":"s/computer/compute/","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"e9d01df106c018eae615617195950ca970b30e2a","unresolved":false,"context_lines":[{"line_number":69,"context_line":"\"/usr/share/OVMF/OVMF_CODE.fd\" for x86_64, and"},{"line_number":70,"context_line":"\"/usr/share/AAVMF/AAVMF_CODE.fd\" for aarch64). If the UEFI firmware file"},{"line_number":71,"context_line":"could not be found, VM boot will fail."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"Alternatives"},{"line_number":74,"context_line":"------------"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_00d38460","line":72,"updated":"2015-11-23 13:20:53.000000000","message":"Hyper-V requires os_secure_boot_signature for the bootloader\u0027s digital signature in an image property.\n\nHow does that related to what is being proposed here?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"c234ed42c12895e70038c39dc11996834d1133c1","unresolved":false,"context_lines":[{"line_number":69,"context_line":"\"/usr/share/OVMF/OVMF_CODE.fd\" for x86_64, and"},{"line_number":70,"context_line":"\"/usr/share/AAVMF/AAVMF_CODE.fd\" for aarch64). If the UEFI firmware file"},{"line_number":71,"context_line":"could not be found, VM boot will fail."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"Alternatives"},{"line_number":74,"context_line":"------------"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"ba8a016a_c994c7e9","line":72,"in_reply_to":"ba8a016a_00d38460","updated":"2015-11-23 14:13:29.000000000","message":"It is not relevant, since this spec isn\u0027t attempting to provide a secure boot feature. It is merely concerned with enabling a guest to use UEFI instead of BIOS, for which there are many other benefits unrelated to secure boot.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"1198f09a1ef5cf903cdff284d177e7d816a9127d","unresolved":false,"context_lines":[{"line_number":69,"context_line":"\"/usr/share/OVMF/OVMF_CODE.fd\" for x86_64, and"},{"line_number":70,"context_line":"\"/usr/share/AAVMF/AAVMF_CODE.fd\" for aarch64). If the UEFI firmware file"},{"line_number":71,"context_line":"could not be found, VM boot will fail."},{"line_number":72,"context_line":""},{"line_number":73,"context_line":"Alternatives"},{"line_number":74,"context_line":"------------"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_33262bbb","line":72,"in_reply_to":"ba8a016a_c994c7e9","updated":"2015-12-01 14:52:29.000000000","message":"OK, I missed that was UEFI and not secure boot.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":108,"context_line":"Other deployer impact"},{"line_number":109,"context_line":"---------------------"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"None"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Developer impact"},{"line_number":114,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_86478076","line":111,"updated":"2015-12-01 21:36:04.000000000","message":"Are there dependent packages to be installed to get the files needed for the os_uefi_loader_path?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":108,"context_line":"Other deployer impact"},{"line_number":109,"context_line":"---------------------"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"None"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Developer impact"},{"line_number":114,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_cc9362f9","line":111,"in_reply_to":"9a8ffd7b_4969a924","updated":"2015-12-02 07:44:36.000000000","message":"yes. it will depend on ovmf package. This section should point out that such package should be installed in the system.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"ec7631249b78ec883e37efc7c6b2ad0ed227e0ad","unresolved":false,"context_lines":[{"line_number":108,"context_line":"Other deployer impact"},{"line_number":109,"context_line":"---------------------"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"None"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Developer impact"},{"line_number":114,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_4969a924","line":111,"in_reply_to":"9a8ffd7b_86478076","updated":"2015-12-01 21:51:11.000000000","message":"I guess you have to install ovmf to get those, and from a quick check on ubuntu 14.04 that\u0027s available.\n\nLooks like things are as easy on Fedora/CentOS/RHEL though:\n\nhttps://fedoraproject.org/wiki/Using_UEFI_with_QEMU#EDK2_Licensing_Issues","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"Other deployer impact"},{"line_number":109,"context_line":"---------------------"},{"line_number":110,"context_line":""},{"line_number":111,"context_line":"None"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Developer impact"},{"line_number":114,"context_line":"----------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_e984390c","line":111,"in_reply_to":"9a8ffd7b_cc9362f9","updated":"2015-12-10 11:17:00.000000000","message":"+1 for including that here.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":141,"context_line":""},{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_4608b82d","line":144,"updated":"2015-12-01 21:36:04.000000000","message":"This is also x86_64 only right?  So the code is going to also have to filter the capability on arch and not just version.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":1779,"name":"Daniel Berrange","email":"berrange@redhat.com","username":"berrange"},"change_message_id":"89fa29dda5e15122dd9c0d7ca7b760b7a6b6323d","unresolved":false,"context_lines":[{"line_number":141,"context_line":""},{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_e8207cb2","line":144,"in_reply_to":"9a8ffd7b_0985cfab","updated":"2015-12-02 11:00:23.000000000","message":"Actually Arm64 too","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":141,"context_line":""},{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_0985cfab","line":144,"in_reply_to":"9a8ffd7b_4608b82d","updated":"2015-12-02 07:44:36.000000000","message":"This spec only implement this for x86. I will describe it here.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_c9027909","line":145,"updated":"2015-12-01 21:36:04.000000000","message":"How do you detect if this isn\u0027t present?  The boot fails in some obscure way?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_a99e3152","line":145,"in_reply_to":"9a8ffd7b_7b0f8688","updated":"2015-12-10 11:17:00.000000000","message":"-1 using that flag, as above.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":142,"context_line":"Dependencies"},{"line_number":143,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":144,"context_line":"* libvirt \u003e\u003d 1.2.8"},{"line_number":145,"context_line":"* OVMF from EDK2"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_7b0f8688","line":145,"in_reply_to":"9a8ffd7b_c9027909","updated":"2015-12-02 07:44:36.000000000","message":"will find uefi through \"os_uefi_loader_path\". If this file could not be found, the boot will fail.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Would need new unit tests."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Documentation Impact"},{"line_number":153,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_062b9095","line":150,"updated":"2015-12-01 21:36:04.000000000","message":"Can\u0027t Intel provide 3rd party testing for this given it relies on a version of libvirt that we don\u0027t have in the gate (we use 1.2.2 right now) and it also relies on an external package install (EDK2)?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"f5f590a6e166b7c624636f222b96fccf1603e34d","unresolved":false,"context_lines":[{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Would need new unit tests."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Documentation Impact"},{"line_number":153,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_89d1f5fd","line":150,"in_reply_to":"7a740942_8cd03f55","updated":"2015-12-10 11:17:00.000000000","message":"Agreed with Matt\u0027s email. I would like to see us have a path where this could be tested soon.\n\nI would be happier if we could merge the feature classification effort, before we add more of these things that need newer versions of libvirt.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Would need new unit tests."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Documentation Impact"},{"line_number":153,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_c9f7c757","line":150,"in_reply_to":"9a8ffd7b_062b9095","updated":"2015-12-02 07:44:36.000000000","message":"Matt, do you mean that we need 3rd CI to test this feature? Currently there is no such 3rd CI for this. Do you think how to handle such similar problems?","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"80f8aa9e23dccc68a9c093db36f16c5fa5af7fd0","unresolved":false,"context_lines":[{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Would need new unit tests."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Documentation Impact"},{"line_number":153,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_d2f9954f","line":150,"in_reply_to":"9a8ffd7b_c9f7c757","updated":"2015-12-02 15:03:54.000000000","message":"Well for example the Intel PCI CI is 3rd party CI for PCI related changes in Nova. That\u0027s not tested with the community infrastructure since it requires a more specialized environment for testing.\n\nWe also have 3rd party CI for VMware since the community infra doesn\u0027t test closed source software, like vSphere - so VMware has to provide that environment for testing VMware driver changes.\n\nlibvirt and ovmf are open source and available in some places (ubuntu 14.04 has ovmf but not libvirt 1.2.8, at least without the cloud archive enabled).  So what I\u0027m wondering is what kind of integration testing plan we have for this path - it could possibly be done with community infra and a job managed by the community, or Intel could host a 3rd party CI job like they do for the PCI CI, or we could just punt and say we don\u0027t care about integration testing this and make sure we log a warning when using it that it\u0027s not tested.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"23b164b1c9a56f514f8ab4aa15fc716fb5e69686","unresolved":false,"context_lines":[{"line_number":147,"context_line":"Testing"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"Would need new unit tests."},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"Documentation Impact"},{"line_number":153,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"7a740942_8cd03f55","line":150,"in_reply_to":"9a8ffd7b_d2f9954f","updated":"2015-12-04 04:26:55.000000000","message":"Here is the -dev mailing list thread on this:\n\nhttp://lists.openstack.org/pipermail/openstack-dev/2015-December/081263.html","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a5bd63ea01694685c0729b67018dfa0acb3aef9f","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":"Some minor additions for launching a UEFI image with Nova, note on"},{"line_number":156,"context_line":"extra config option and metadata property, Operator / installation"},{"line_number":157,"context_line":"information for the UEFI firmware."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"References"},{"line_number":160,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_e91dfd66","line":157,"updated":"2015-12-01 21:36:04.000000000","message":"I\u0027d think the hypervisor support matrix should be updated for this also.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"27f9fc71812024276aca0761f05c6cdd03414d18","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":"Some minor additions for launching a UEFI image with Nova, note on"},{"line_number":156,"context_line":"extra config option and metadata property, Operator / installation"},{"line_number":157,"context_line":"information for the UEFI firmware."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"References"},{"line_number":160,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9a8ffd7b_116e5b2f","line":157,"in_reply_to":"9a8ffd7b_e91dfd66","updated":"2015-12-02 07:44:36.000000000","message":"Yes. this should be also added.","commit_id":"d0d542053253678d774b7d89d1a468cc7fdeb11c"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"36137dba541666949070360fff1d76e6a5cd0e14","unresolved":false,"context_lines":[{"line_number":141,"context_line":"Testing"},{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"Would need new unit tests."},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"Documentation Impact"},{"line_number":147,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":9,"id":"7a740942_0f88a521","line":144,"updated":"2015-12-10 11:51:18.000000000","message":"I still want to see us mention that it will eventually be functionally tested, even is we are not yet sure how that will get done.","commit_id":"fcb4c7c80bd37af24d78da105df289acd33f1b11"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"a244cba77cc510959cbb7d2ed053b51ea2b8628c","unresolved":false,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"Would need new unit tests. And it will eventually be functionally tested."},{"line_number":145,"context_line":"The following are possible testing options:"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* 3rd party CI job"},{"line_number":148,"context_line":"* devstack plugin that will allow us to test newer libvirt/qemu"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a740942_dc1b321b","line":145,"updated":"2015-12-10 14:32:57.000000000","message":"I\u0027d be +2 on this as long as we state that without some kind of functional testing, a warning log will be emitted when this is used (at least on first usage per service start) that it\u0027s not tested and therefore considered experimental, like we do for cells v1.","commit_id":"4ce39d9eec7731fd8c9ace1a648c156e77e3b515"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"68a39496cc965496f72bd3c381063f21e22feefc","unresolved":false,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"Would need new unit tests. And it will eventually be functionally tested."},{"line_number":145,"context_line":"The following are possible testing options:"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* 3rd party CI job"},{"line_number":148,"context_line":"* devstack plugin that will allow us to test newer libvirt/qemu"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a740942_fba85479","line":145,"in_reply_to":"7a740942_dc1b321b","updated":"2015-12-11 01:23:05.000000000","message":"But what John means looks like be that we have to make commitment to get the feature functionally tested. So can I need add statement like \"without some kind of functional testing ....\"? ^-^","commit_id":"4ce39d9eec7731fd8c9ace1a648c156e77e3b515"},{"author":{"_account_id":9581,"name":"Ren Qiaowei","email":"qiaowei.ren@intel.com","username":"qiaowei"},"change_message_id":"a90822f725f879dbc335c9c4182abef4b4676ebf","unresolved":false,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"Would need new unit tests. And it will eventually be functionally tested."},{"line_number":145,"context_line":"The following are possible testing options:"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"* 3rd party CI job"},{"line_number":148,"context_line":"* devstack plugin that will allow us to test newer libvirt/qemu"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7a740942_7b01c469","line":145,"in_reply_to":"7a740942_fba85479","updated":"2015-12-11 01:26:09.000000000","message":"Oh, I just noticed the mail about it. Sure, I will update this section like this. Thanks!","commit_id":"4ce39d9eec7731fd8c9ace1a648c156e77e3b515"}]}
