)]}'
{"specs/queens/approved/report-cpu-features-to-placement.rst":[{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"c4cfebd57e71fc6d51b64c87bef9605092e0f1f3","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/report-cpu-features-as-traits"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa0c359_583e6c8b","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":13},"updated":"2018-02-12 11:48:34.000000000","message":"Traits are","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"91e32d9f94bc2acdf734e61a153ee7746e5d47d3","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/report-cpu-features-as-traits"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_dc7f6fa9","line":13,"range":{"start_line":13,"start_character":0,"end_line":13,"end_character":13},"in_reply_to":"3fa0c359_583e6c8b","updated":"2018-03-06 07:42:31.000000000","message":"Done","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"06db04601499c856cd7f0ca79e2c2877ae030741","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/report-cpu-features-as-traits"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_3f6504b6","line":14,"range":{"start_line":14,"start_character":42,"end_line":14,"end_character":55},"updated":"2018-03-06 17:06:49.000000000","message":"to placement","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"06db04601499c856cd7f0ca79e2c2877ae030741","unresolved":false,"context_lines":[{"line_number":11,"context_line":"https://blueprints.launchpad.net/nova/+spec/report-cpu-features-as-traits"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."},{"line_number":17,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_1f05a8c2","line":14,"range":{"start_line":14,"start_character":56,"end_line":14,"end_character":62},"updated":"2018-03-06 17:06:49.000000000","message":"using the","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"06db04601499c856cd7f0ca79e2c2877ae030741","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_5f0250b6","line":15,"range":{"start_line":15,"start_character":10,"end_line":15,"end_character":26},"updated":"2018-03-06 17:06:49.000000000","message":"proposes","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"06db04601499c856cd7f0ca79e2c2877ae030741","unresolved":false,"context_lines":[{"line_number":13,"context_line":"The traits is already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to the placement by the traits API."},{"line_number":15,"context_line":"This spec aims to propose reporting the cpu features of compute node to"},{"line_number":16,"context_line":"the placement service by traits API."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Problem description"},{"line_number":19,"context_line":"\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":1,"id":"1f9dbf25_1f2e0843","line":16,"range":{"start_line":16,"start_character":22,"end_line":16,"end_character":25},"updated":"2018-03-06 17:06:49.000000000","message":"using the","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"Problem description"},{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Currently Nova supports to scheduling the instance based on the compute node\u0027s"},{"line_number":22,"context_line":"cpu features. But it isn\u0027t perfect for now."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the cpu features in all the virt drivers."}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_bf561f06","line":21,"range":{"start_line":21,"start_character":24,"end_line":21,"end_character":42},"updated":"2018-03-08 16:17:01.000000000","message":"scheduling an instance based on","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Currently Nova supports to scheduling the instance based on the compute node\u0027s"},{"line_number":22,"context_line":"cpu features. But it isn\u0027t perfect for now."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the cpu features in all the virt drivers."},{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_c303f041","line":22,"range":{"start_line":22,"start_character":14,"end_line":22,"end_character":43},"updated":"2018-03-08 16:17:01.000000000","message":"\"However, there are some limitations:\"","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":19,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"Currently Nova supports to scheduling the instance based on the compute node\u0027s"},{"line_number":22,"context_line":"cpu features. But it isn\u0027t perfect for now."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the cpu features in all the virt drivers."},{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_63f54457","line":22,"range":{"start_line":22,"start_character":0,"end_line":22,"end_character":3},"updated":"2018-03-08 16:17:01.000000000","message":"CPU","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":21,"context_line":"Currently Nova supports to scheduling the instance based on the compute node\u0027s"},{"line_number":22,"context_line":"cpu features. But it isn\u0027t perfect for now."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the cpu features in all the virt drivers."},{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"},{"line_number":26,"context_line":"  different virt driver."},{"line_number":27,"context_line":"* The CPU features of each compute node are stored in a JSON-BLOB of the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_83fdf83b","line":24,"range":{"start_line":24,"start_character":40,"end_line":24,"end_character":43},"updated":"2018-03-08 16:17:01.000000000","message":"CPU","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":22,"context_line":"cpu features. But it isn\u0027t perfect for now."},{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the cpu features in all the virt drivers."},{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"},{"line_number":26,"context_line":"  different virt driver."},{"line_number":27,"context_line":"* The CPU features of each compute node are stored in a JSON-BLOB of the"},{"line_number":28,"context_line":"  compute node DB table. That can\u0027t provide efficient way to query the compute"},{"line_number":29,"context_line":"  nodes by cpu features."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_03b80874","line":26,"range":{"start_line":25,"start_character":2,"end_line":26,"end_character":24},"updated":"2018-03-08 16:17:01.000000000","message":"\"This leads to an inconsistent setup for operators.\"","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"},{"line_number":26,"context_line":"  different virt driver."},{"line_number":27,"context_line":"* The CPU features of each compute node are stored in a JSON-BLOB of the"},{"line_number":28,"context_line":"  compute node DB table. That can\u0027t provide efficient way to query the compute"},{"line_number":29,"context_line":"  nodes by cpu features."},{"line_number":30,"context_line":"* The flavor extra spec `capabilities` mix the cpu features and other things"},{"line_number":31,"context_line":"  together, and it depends on the virt driver."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_83abb81b","line":28,"range":{"start_line":28,"start_character":2,"end_line":28,"end_character":14},"updated":"2018-03-08 16:17:01.000000000","message":"``compute_nodes``","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":25,"context_line":"  That leads to the user may need different input when the under cloud use"},{"line_number":26,"context_line":"  different virt driver."},{"line_number":27,"context_line":"* The CPU features of each compute node are stored in a JSON-BLOB of the"},{"line_number":28,"context_line":"  compute node DB table. That can\u0027t provide efficient way to query the compute"},{"line_number":29,"context_line":"  nodes by cpu features."},{"line_number":30,"context_line":"* The flavor extra spec `capabilities` mix the cpu features and other things"},{"line_number":31,"context_line":"  together, and it depends on the virt driver."},{"line_number":32,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_6368e4f4","line":29,"range":{"start_line":28,"start_character":25,"end_line":29,"end_character":24},"updated":"2018-03-08 16:17:01.000000000","message":"\"It is therefore not possible to efficiently query for compute nodes having certain CPU features.\"","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":33,"context_line":"Use Cases"},{"line_number":34,"context_line":"---------"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* The end user expects the standard and consistent naming for the CPU features"},{"line_number":37,"context_line":"  whatever the virt driver is used by the cloud."},{"line_number":38,"context_line":"* The end user expects the consistent way to request capabilities for the"},{"line_number":39,"context_line":"  CPU features."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_036d6803","line":36,"range":{"start_line":36,"start_character":23,"end_line":36,"end_character":26},"updated":"2018-03-08 16:17:01.000000000","message":"a standard","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":34,"context_line":"---------"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* The end user expects the standard and consistent naming for the CPU features"},{"line_number":37,"context_line":"  whatever the virt driver is used by the cloud."},{"line_number":38,"context_line":"* The end user expects the consistent way to request capabilities for the"},{"line_number":39,"context_line":"  CPU features."},{"line_number":40,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_6351c436","line":37,"range":{"start_line":37,"start_character":2,"end_line":37,"end_character":10},"updated":"2018-03-08 16:17:01.000000000","message":"s/whatever/regardless of","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":34,"context_line":"---------"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* The end user expects the standard and consistent naming for the CPU features"},{"line_number":37,"context_line":"  whatever the virt driver is used by the cloud."},{"line_number":38,"context_line":"* The end user expects the consistent way to request capabilities for the"},{"line_number":39,"context_line":"  CPU features."},{"line_number":40,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_0346c87d","line":37,"range":{"start_line":37,"start_character":27,"end_line":37,"end_character":42},"updated":"2018-03-08 16:17:01.000000000","message":"used in the cloud","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* The end user expects the standard and consistent naming for the CPU features"},{"line_number":37,"context_line":"  whatever the virt driver is used by the cloud."},{"line_number":38,"context_line":"* The end user expects the consistent way to request capabilities for the"},{"line_number":39,"context_line":"  CPU features."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"Proposed change"}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_234bcc84","line":38,"range":{"start_line":38,"start_character":23,"end_line":38,"end_character":26},"updated":"2018-03-08 16:17:01.000000000","message":"a consistent way","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d1e99e6c009b6d82b2681adfb8724bc7f429c567","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Proposed change"},{"line_number":42,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Proposes the compute nodes should report CPU features to the placement service"},{"line_number":45,"context_line":"by the traits API. The CPU features should map to the CPU traits which are"},{"line_number":46,"context_line":"defined in the os-traits library."},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_d930e40a","line":44,"range":{"start_line":44,"start_character":13,"end_line":44,"end_character":27},"updated":"2018-02-28 14:47:26.000000000","message":"we just agreed at the PTG that it\u0027s the virt drivers\u0027s responsibility to provide the set of traits based on their knowledge of all the possible options that trick the CPU capabilities (like cpu_model).","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"91e32d9f94bc2acdf734e61a153ee7746e5d47d3","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Proposed change"},{"line_number":42,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Proposes the compute nodes should report CPU features to the placement service"},{"line_number":45,"context_line":"by the traits API. The CPU features should map to the CPU traits which are"},{"line_number":46,"context_line":"defined in the os-traits library."},{"line_number":47,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_9c4b3786","line":44,"range":{"start_line":44,"start_character":13,"end_line":44,"end_character":27},"in_reply_to":"1f9dbf25_d930e40a","updated":"2018-03-06 07:42:31.000000000","message":"Done","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f9df4d6b4e74852ce49b2e5a038293e880bf995a","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Proposed change"},{"line_number":42,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Proposes the compute nodes should report CPU features to the placement service"},{"line_number":45,"context_line":"by the traits API. The CPU features should map to the CPU traits which are"},{"line_number":46,"context_line":"defined in the os-traits library."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Then the administrator can define the required traits for each flavor in the"},{"line_number":49,"context_line":"extra spec `traits`::"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_5924d4c6","line":46,"range":{"start_line":44,"start_character":0,"end_line":46,"end_character":33},"updated":"2018-02-28 14:46:37.000000000","message":"Per the PTG:\n\n\"the cpu_model config option needs to be considered when reporting CPU features as traits.  (and equivalent config options for other virt drivers)\"","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"91e32d9f94bc2acdf734e61a153ee7746e5d47d3","unresolved":false,"context_lines":[{"line_number":41,"context_line":"Proposed change"},{"line_number":42,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"Proposes the compute nodes should report CPU features to the placement service"},{"line_number":45,"context_line":"by the traits API. The CPU features should map to the CPU traits which are"},{"line_number":46,"context_line":"defined in the os-traits library."},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"Then the administrator can define the required traits for each flavor in the"},{"line_number":49,"context_line":"extra spec `traits`::"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_7c4ae380","line":46,"range":{"start_line":44,"start_character":0,"end_line":46,"end_character":33},"in_reply_to":"1f9dbf25_5924d4c6","updated":"2018-03-06 07:42:31.000000000","message":"Done","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":11564,"name":"Chris Dent","email":"cdent@anticdent.org","username":"chdent"},"change_message_id":"c4cfebd57e71fc6d51b64c87bef9605092e0f1f3","unresolved":false,"context_lines":[{"line_number":48,"context_line":"Then the administrator can define the required traits for each flavor in the"},{"line_number":49,"context_line":"extra spec `traits`::"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    nova flavor-key 1 set traits\u003dHW:CPU:X86:AVX,HW:CPU:X86:AVX2"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa0c359_580c2ceb","line":51,"updated":"2018-02-12 11:48:34.000000000","message":"How does (or does it at all?) this correspond with the existing syntax in extra specs of:\n\n     \"trait:HW:CPU:X86:AV\": \"required\"","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"8ec01f46d43abddbac8773f0cea9577c81bdaf83","unresolved":false,"context_lines":[{"line_number":48,"context_line":"Then the administrator can define the required traits for each flavor in the"},{"line_number":49,"context_line":"extra spec `traits`::"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    nova flavor-key 1 set traits\u003dHW:CPU:X86:AVX,HW:CPU:X86:AVX2"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa0c359_6f1a0418","line":51,"in_reply_to":"3fa0c359_580c2ceb","updated":"2018-02-16 15:18:41.000000000","message":"Is that how it\u0027s spelled, or is it with underscores?","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8f0d19c620c9160316d391b1fa9c130c846296ac","unresolved":false,"context_lines":[{"line_number":48,"context_line":"Then the administrator can define the required traits for each flavor in the"},{"line_number":49,"context_line":"extra spec `traits`::"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    nova flavor-key 1 set traits\u003dHW:CPU:X86:AVX,HW:CPU:X86:AVX2"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"}],"source_content_type":"text/x-rst","patch_set":1,"id":"3fa0c359_731cf4c0","line":51,"in_reply_to":"3fa0c359_6f1a0418","updated":"2018-02-20 07:45:38.000000000","message":"Yes, sorry, it should be with underscores.","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"66dd7030302b654145782a38dc8281d822febebb","unresolved":false,"context_lines":[{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"},{"line_number":55,"context_line":"scheduled to the compute node which has the cpu features `avx` and `avx2`."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_68d2e55e","line":56,"updated":"2018-03-04 10:12:38.000000000","message":"Maybe being overly paranoid here, but how do we handle the case of a mixed cloud where one virt driver reports CPU features as traits and a different virt driver hasn\u0027t been updated yet and is still using the old method?","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"91e32d9f94bc2acdf734e61a153ee7746e5d47d3","unresolved":false,"context_lines":[{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"},{"line_number":55,"context_line":"scheduled to the compute node which has the cpu features `avx` and `avx2`."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_1724e0c5","line":56,"in_reply_to":"1f9dbf25_689505e4","updated":"2018-03-06 07:42:31.000000000","message":"Each virt driver report the CPU traits to the nova-compute, nova-compute will update the traits to its own resource provider. So it doesn\u0027t have any conflict between the new and old virt driver.\n\nFor the current implemet, nova-compute will overwrite the old traits with new traits. In the future, there is discussion about merge traits, but it\u0027s more about external traits. https://etherpad.openstack.org/p/nova-ptg-rocky@492\n\nDoes it answer your question?","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"3cc8cd533fc437b07249e1a96f97ee6d03dbee7d","unresolved":false,"context_lines":[{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"},{"line_number":55,"context_line":"scheduled to the compute node which has the cpu features `avx` and `avx2`."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_689505e4","line":56,"in_reply_to":"1f9dbf25_68d2e55e","updated":"2018-03-04 11:08:47.000000000","message":"Actually, never mind mixed clouds - what about just upgrading an existing cloud, and having a mix of old and new of the same virt driver? Which reminds me, the Upgrade Impact is missing from this spec :)","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"a21fd92330bc1c79bd628819f1c80666be092fb9","unresolved":false,"context_lines":[{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"},{"line_number":55,"context_line":"scheduled to the compute node which has the cpu features `avx` and `avx2`."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"ff6b8bd7_25ee7c22","line":56,"in_reply_to":"ff6b8bd7_1724e0c5","updated":"2018-03-06 18:28:42.000000000","message":"Ah, gotcha. I was missing the \u0027nova-compute updating traits\u0027 bit. So yeah, upgrades are fine - in cases where the virt driver doesn\u0027t report traits, nova-compute will just use what it has.","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":53,"context_line":"The above commands sets a value to the extra spec `traits` for the flavor which"},{"line_number":54,"context_line":"id is `1`. It means that any server booting up with that flavor will be"},{"line_number":55,"context_line":"scheduled to the compute node which has the cpu features `avx` and `avx2`."},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Alternatives"},{"line_number":58,"context_line":"------------"},{"line_number":59,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_863506dd","line":56,"in_reply_to":"ff6b8bd7_25ee7c22","updated":"2018-03-08 16:17:01.000000000","message":"As long as the changes to the flavor extra specs are done *after* upgrading all compute nodes, there will be no upgrade impact. If the operator modifies flavor extra specs *before* upgrading all computes, then those computes that haven\u0027t been upgraded will be excluded from the list of resource provider returned by the placement API for the flavors that require a set of CPU feature traits.","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"d1e99e6c009b6d82b2681adfb8724bc7f429c567","unresolved":false,"context_lines":[{"line_number":108,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"Each virt driver should returns a list of CPU traits instead of a set of"},{"line_number":111,"context_line":"free string for the CPU features."},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Assignee(s)"},{"line_number":114,"context_line":"-----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1f9dbf25_f91e006f","line":111,"updated":"2018-02-28 14:47:26.000000000","message":"Right, and IMHO we should say to use update_provider_tree() for that and no longer do it thru set_traits()","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8f71c5f640542634e36f86d7fcb0510795c8f4cf","unresolved":false,"context_lines":[{"line_number":108,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"Each virt driver should returns a list of CPU traits instead of a set of"},{"line_number":111,"context_line":"free string for the CPU features."},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Assignee(s)"},{"line_number":114,"context_line":"-----------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_84ae5096","line":111,"in_reply_to":"1f9dbf25_f91e006f","updated":"2018-03-09 08:29:50.000000000","message":"yes, ++","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"abd9fc075571a0b092169c8d5cc0493e5005797b","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Work Items"},{"line_number":123,"context_line":"----------"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"* Add more CPU traits into the os-traits library"},{"line_number":126,"context_line":"* Implement an interface which returns a list of traits for the CPU features"},{"line_number":127,"context_line":"  in each virt driver"},{"line_number":128,"context_line":"* Implement report CPU traits to the placement service in the compute manager."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_0657b604","line":125,"range":{"start_line":125,"start_character":2,"end_line":125,"end_character":48},"updated":"2018-03-08 16:17:01.000000000","message":"what are the new proposed CPU traits that you wish to add to the os-traits library? I don\u0027t see any discussion of that in this spec.","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"8f71c5f640542634e36f86d7fcb0510795c8f4cf","unresolved":false,"context_lines":[{"line_number":122,"context_line":"Work Items"},{"line_number":123,"context_line":"----------"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"* Add more CPU traits into the os-traits library"},{"line_number":126,"context_line":"* Implement an interface which returns a list of traits for the CPU features"},{"line_number":127,"context_line":"  in each virt driver"},{"line_number":128,"context_line":"* Implement report CPU traits to the placement service in the compute manager."}],"source_content_type":"text/x-rst","patch_set":1,"id":"df7087c5_04c5605b","line":125,"range":{"start_line":125,"start_character":2,"end_line":125,"end_character":48},"in_reply_to":"df7087c5_0657b604","updated":"2018-03-09 08:29:50.000000000","message":"I\u0027m going to remove this. We can add new traits when people need it.","commit_id":"4bba6653abcd3339e48edf94f553e91fb5090e1f"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"824cf88b9277e42ff6bbde99f6b3b9550e9ac64b","unresolved":false,"context_lines":[{"line_number":95,"context_line":"Other deployer impact"},{"line_number":96,"context_line":"---------------------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"It needn\u0027t to enable `ComputeCapabilitiesFilter` filter for using the extra"},{"line_number":99,"context_line":"spec `traits` in the flavor to request CPU features."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_6daaf8d2","line":99,"range":{"start_line":98,"start_character":1,"end_line":99,"end_character":52},"updated":"2018-03-09 14:46:47.000000000","message":"this doesn\u0027t make grammatical sense. How about this instead?\n\nIt will be possible to deprecate and remove the ComputeCapabilitiesFilter once all virt drivers are reporting CPU features consistently using traits.","commit_id":"f73293a23b335140ea0be56ac1320c5133ab3a53"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"52320a1c1f5c603ff6828baf3bc353bae30c208d","unresolved":false,"context_lines":[{"line_number":95,"context_line":"Other deployer impact"},{"line_number":96,"context_line":"---------------------"},{"line_number":97,"context_line":""},{"line_number":98,"context_line":"It needn\u0027t to enable `ComputeCapabilitiesFilter` filter for using the extra"},{"line_number":99,"context_line":"spec `traits` in the flavor to request CPU features."},{"line_number":100,"context_line":""},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"Developer impact"}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_40d32461","line":99,"range":{"start_line":98,"start_character":1,"end_line":99,"end_character":52},"in_reply_to":"df7087c5_6daaf8d2","updated":"2018-03-11 14:12:08.000000000","message":"Done","commit_id":"f73293a23b335140ea0be56ac1320c5133ab3a53"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"824cf88b9277e42ff6bbde99f6b3b9550e9ac64b","unresolved":false,"context_lines":[{"line_number":129,"context_line":"  | custom                | custom cpu model       | custom cpu model |"},{"line_number":130,"context_line":"  +-----------------------+------------------------+------------------+"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"Using the libvirt API `virConnectBaselineCPU` and the guest CPU model to get"},{"line_number":133,"context_line":"the CPU features."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"There is no same configuration for other virt drivers. For other virt drivers,"},{"line_number":136,"context_line":"they will report CPU traits same as the current way."}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_adf6d0f8","line":133,"range":{"start_line":132,"start_character":0,"end_line":133,"end_character":17},"updated":"2018-03-09 14:46:47.000000000","message":"How about this wording instead?\n\nFor the libvirt virt driver, the ``virConnectBaselineCPU`` libvirt API call to query for CPU model and translate the model into CPU features. Other virt drivers can use similar calls in their virt APIs to determine CPU features.","commit_id":"f73293a23b335140ea0be56ac1320c5133ab3a53"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"52320a1c1f5c603ff6828baf3bc353bae30c208d","unresolved":false,"context_lines":[{"line_number":129,"context_line":"  | custom                | custom cpu model       | custom cpu model |"},{"line_number":130,"context_line":"  +-----------------------+------------------------+------------------+"},{"line_number":131,"context_line":""},{"line_number":132,"context_line":"Using the libvirt API `virConnectBaselineCPU` and the guest CPU model to get"},{"line_number":133,"context_line":"the CPU features."},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"There is no same configuration for other virt drivers. For other virt drivers,"},{"line_number":136,"context_line":"they will report CPU traits same as the current way."}],"source_content_type":"text/x-rst","patch_set":2,"id":"df7087c5_80e7fc40","line":133,"range":{"start_line":132,"start_character":0,"end_line":133,"end_character":17},"in_reply_to":"df7087c5_adf6d0f8","updated":"2018-03-11 14:12:08.000000000","message":"Done","commit_id":"f73293a23b335140ea0be56ac1320c5133ab3a53"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"86d94b34c7fec0186eb099d9d8034740c670cf49","unresolved":false,"context_lines":[{"line_number":48,"context_line":"extra spec `traits`::"},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"    nova flavor-key 1 set trait:HW_CPU_X86_AVX\u003drequired"},{"line_number":51,"context_line":"    nova flavor-key 1 set trait:HW_CPU_X86_AVX2\u003drequired"},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"The above commands set two CPU features as required for a flavor. It means that"},{"line_number":54,"context_line":"any server booting up with that flavor will be scheduled to the compute node"}],"source_content_type":"text/x-rst","patch_set":3,"id":"df7087c5_c96518e3","line":51,"updated":"2018-03-12 08:05:05.000000000","message":"nit: prefer openstack CLI rather than nova CLI according to the official flavor documentation.","commit_id":"18bdbe536aa66ea5ac03dfa53193c1990bf51e84"},{"author":{"_account_id":25625,"name":"Tetsuro Nakamura","email":"tetsuro.nakamura.bc@hco.ntt.co.jp","username":"tetsuro0907"},"change_message_id":"86d94b34c7fec0186eb099d9d8034740c670cf49","unresolved":false,"context_lines":[{"line_number":182,"context_line":"   * - Release Name"},{"line_number":183,"context_line":"     - Description"},{"line_number":184,"context_line":"   * - Queens"},{"line_number":185,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":3,"id":"df7087c5_2985b45a","line":185,"updated":"2018-03-12 08:05:05.000000000","message":"Should it be updated to Rocky?","commit_id":"18bdbe536aa66ea5ac03dfa53193c1990bf51e84"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"0cd30b181a5bfa80e16828361a5d12f579e71c65","unresolved":false,"context_lines":[{"line_number":182,"context_line":"   * - Release Name"},{"line_number":183,"context_line":"     - Description"},{"line_number":184,"context_line":"   * - Queens"},{"line_number":185,"context_line":"     - Introduced"}],"source_content_type":"text/x-rst","patch_set":3,"id":"df7087c5_fc81bc4b","line":185,"in_reply_to":"df7087c5_2985b45a","updated":"2018-03-12 08:52:58.000000000","message":"oops, good catch","commit_id":"18bdbe536aa66ea5ac03dfa53193c1990bf51e84"}],"specs/rocky/approved/report-cpu-features-to-placement.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"6643c75de165d23d94a5e39a24380b06a68a4bd0","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":" This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_fe3afe95","line":1,"updated":"2018-03-12 22:06:57.000000000","message":"The filename should match the blueprint, so report-cpu-features-as-traits.rst.","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4ff1288e93957c2cd6f8fbb02dbf15bb7260c8e0","unresolved":false,"context_lines":[{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Traits are already supported by the placement service. All the compute"},{"line_number":14,"context_line":"node\u0027s capabilities should be reported to placement using the traits API."},{"line_number":15,"context_line":"This spec proposes reporting the cpu features of compute node to placement"},{"line_number":16,"context_line":"using traits API."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_438d5379","line":15,"range":{"start_line":15,"start_character":33,"end_line":15,"end_character":36},"updated":"2018-03-12 21:32:01.000000000","message":"nit : CPU (in caps)","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4ff1288e93957c2cd6f8fbb02dbf15bb7260c8e0","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"* There is no consistent naming for the CPU features in all the virt drivers."},{"line_number":25,"context_line":"  This leads to an inconsistent setup for operators."},{"line_number":26,"context_line":"* The CPU features of each compute node are stored in a JSON-BLOB of the"},{"line_number":27,"context_line":"  ``compute_nodes`` DB table. It is therefore not possible to efficiently"},{"line_number":28,"context_line":"  query for compute nodes having certain CPU features."},{"line_number":29,"context_line":"* The flavor extra spec `capabilities` mix the cpu features and other things"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_c381634c","line":26,"range":{"start_line":26,"start_character":56,"end_line":26,"end_character":65},"updated":"2018-03-12 21:32:01.000000000","message":"nit: a JSON blob...","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4ff1288e93957c2cd6f8fbb02dbf15bb7260c8e0","unresolved":false,"context_lines":[{"line_number":111,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":112,"context_line":""},{"line_number":113,"context_line":"Each virt-driver should attach CPU traits to the compute node\u0027s resource"},{"line_number":114,"context_line":"provider in the method `update_provider_tree()`."},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"Libvirt"},{"line_number":117,"context_line":"-------"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_83c12b83","line":114,"updated":"2018-03-12 21:32:01.000000000","message":"it implicitely creates a dependency on the nested RPs series, but fine by me (just an implementation detail)","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4ff1288e93957c2cd6f8fbb02dbf15bb7260c8e0","unresolved":false,"context_lines":[{"line_number":131,"context_line":"  | host-passthrough      | N/A                    | host cpu model   |"},{"line_number":132,"context_line":"  | custom                | custom cpu model       | custom cpu model |"},{"line_number":133,"context_line":"  +-----------------------+------------------------+------------------+"},{"line_number":134,"context_line":""},{"line_number":135,"context_line":"For the libvirt virt driver, the ``virConnectBaselineCPU`` libvirt API call"},{"line_number":136,"context_line":"to query for CPU model and translate the model into CPU features. Other virt"},{"line_number":137,"context_line":"drivers can use similar calls in their virt APIs to determine CPU features."},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"There is no same configuration for other virt drivers. For other virt drivers,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_a3b6aff9","line":136,"range":{"start_line":134,"start_character":0,"end_line":136,"end_character":64},"updated":"2018-03-12 21:32:01.000000000","message":"rather : \"the libvirt virt driver calls a specific libvirt API method (virConnectBaseLineCPU) which queries the CPU model and returns it with all its CPU features.\"","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"4ff1288e93957c2cd6f8fbb02dbf15bb7260c8e0","unresolved":false,"context_lines":[{"line_number":152,"context_line":"----------"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"* Implement an interface which returns a list of traits for the CPU features"},{"line_number":155,"context_line":"  in each virt driver."},{"line_number":156,"context_line":"* Implement report CPU traits to the compute node resource provider in the"},{"line_number":157,"context_line":"  `update_provider_tree()` method."},{"line_number":158,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"df7087c5_839e0b52","line":155,"updated":"2018-03-12 21:32:01.000000000","message":"that looks like a very specific implementation detail, but meh, I got your point","commit_id":"74da0860d85d7b4594f30d3fcd4f4b5c7385c16e"}]}
