)]}'
{"specs/stein/approved/instance-ops.rst":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"b827390178792f59c39efe83a7ecbc1a465e960c","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the VARs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the VARs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_b6c7073e","line":86,"range":{"start_line":86,"start_character":24,"end_line":86,"end_character":70},"updated":"2018-10-19 13:17:18.000000000","message":"today rebuild does not call the scheduler so we cannot allocate new cyborg device RPs during rebuild but need to use the original ones.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a68ac3b7c987c2986956458eeb4aaf3441d1499d","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the VARs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the VARs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_d76f775e","line":86,"range":{"start_line":86,"start_character":24,"end_line":86,"end_character":70},"in_reply_to":"3f79a3b5_7e434112","updated":"2018-10-29 09:17:51.000000000","message":"I think nova just checks that the new image fits to the current host and allocation with the new image. But it does it without calling the scheduler and placement. \nThis might need to be enhanced for due to cyborg.\n\nhttps://github.com/openstack/nova/blob/88db2f9c0a0c2ef9cdf15b94893fbc574a0f028a/nova/conductor/manager.py#L1005","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"44bc3a8097a022fef5dd2b82a24654f0a055d9c3","unresolved":false,"context_lines":[{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the VARs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the VARs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_7e434112","line":86,"range":{"start_line":86,"start_character":24,"end_line":86,"end_character":70},"in_reply_to":"3f79a3b5_b6c7073e","updated":"2018-10-27 04:02:17.000000000","message":"Hmm, the new image may have image traits that may affect placement, right? How is that handled if the scheduler is not invoked?\n\nIf the old RPs stay the same, then Cyborg is not called to create or bind VARs. However, a change of image means the image properties may change. So how can Cyborg take the new image properties into account? This is a problem.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"b827390178792f59c39efe83a7ecbc1a465e960c","unresolved":false,"context_lines":[{"line_number":108,"context_line":"* Restoring from a snapshot: This is equivalent to a rebuild with the\r"},{"line_number":109,"context_line":"  snapshot as the new disk image.\r"},{"line_number":110,"context_line":"\r"},{"line_number":111,"context_line":"* Evacuate: This is equivalent to a rebuild that cannot be scheduled on the\r"},{"line_number":112,"context_line":"  same node.\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_763f2f22","line":112,"range":{"start_line":111,"start_character":12,"end_line":112,"end_character":12},"updated":"2018-10-19 13:17:18.000000000","message":"Or in other words evacuate always calls the scheduler (except force\u003dTrue) so it can be handled in the same way a new boot, so nova needs to create VARs and needs to bind them on the new host. (VARs on the old host cannot be unbind as the old host cannot be accessed)","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a68ac3b7c987c2986956458eeb4aaf3441d1499d","unresolved":false,"context_lines":[{"line_number":108,"context_line":"* Restoring from a snapshot: This is equivalent to a rebuild with the\r"},{"line_number":109,"context_line":"  snapshot as the new disk image.\r"},{"line_number":110,"context_line":"\r"},{"line_number":111,"context_line":"* Evacuate: This is equivalent to a rebuild that cannot be scheduled on the\r"},{"line_number":112,"context_line":"  same node.\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_57912744","line":112,"range":{"start_line":111,"start_character":12,"end_line":112,"end_character":12},"in_reply_to":"3f79a3b5_611de10e","updated":"2018-10-29 09:17:51.000000000","message":"I might be mistaken with my previous comment. Nova can unbind the var from the failed host but cannot unplug it. Overall I don\u0027t see this as a problem.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"44bc3a8097a022fef5dd2b82a24654f0a055d9c3","unresolved":false,"context_lines":[{"line_number":108,"context_line":"* Restoring from a snapshot: This is equivalent to a rebuild with the\r"},{"line_number":109,"context_line":"  snapshot as the new disk image.\r"},{"line_number":110,"context_line":"\r"},{"line_number":111,"context_line":"* Evacuate: This is equivalent to a rebuild that cannot be scheduled on the\r"},{"line_number":112,"context_line":"  same node.\r"},{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_611de10e","line":112,"range":{"start_line":111,"start_character":12,"end_line":112,"end_character":12},"in_reply_to":"3f79a3b5_763f2f22","updated":"2018-10-27 04:02:17.000000000","message":"In this case, Nova should unbind and delete the VARs in the failed host.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"b827390178792f59c39efe83a7ecbc1a465e960c","unresolved":false,"context_lines":[{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"},{"line_number":116,"context_line":"  original boot image.\r"},{"line_number":117,"context_line":"\r"},{"line_number":118,"context_line":"* Set administrator password, trigger crash dump: These are supported and\r"},{"line_number":119,"context_line":"  are no-ops for accelerators.\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_9621ab00","line":116,"updated":"2018-10-19 13:17:18.000000000","message":"As the image can change during the rescue we need to define what happen with the cyborg specific information coming from the original and the new image","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"44bc3a8097a022fef5dd2b82a24654f0a055d9c3","unresolved":false,"context_lines":[{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"},{"line_number":116,"context_line":"  original boot image.\r"},{"line_number":117,"context_line":"\r"},{"line_number":118,"context_line":"* Set administrator password, trigger crash dump: These are supported and\r"},{"line_number":119,"context_line":"  are no-ops for accelerators.\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_e1d81125","line":116,"in_reply_to":"3f79a3b5_9621ab00","updated":"2018-10-27 04:02:17.000000000","message":"This is the same problem as the rebuild case. However, one would imagine that rescue images would not need special accelerator properties. So we could just leave the original accelerator resources intact (no unbinding) and re-attach them after unrescue.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a68ac3b7c987c2986956458eeb4aaf3441d1499d","unresolved":false,"context_lines":[{"line_number":113,"context_line":"\r"},{"line_number":114,"context_line":"* Rescue: This is equivalent to a rebuild on the same node with a change of\r"},{"line_number":115,"context_line":"  boot image. The unrescue operation is treated the same as rescue with the\r"},{"line_number":116,"context_line":"  original boot image.\r"},{"line_number":117,"context_line":"\r"},{"line_number":118,"context_line":"* Set administrator password, trigger crash dump: These are supported and\r"},{"line_number":119,"context_line":"  are no-ops for accelerators.\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_d7a457a6","line":116,"in_reply_to":"3f79a3b5_e1d81125","updated":"2018-10-29 09:17:51.000000000","message":"Your suggestions make sense to me.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"b827390178792f59c39efe83a7ecbc1a465e960c","unresolved":false,"context_lines":[{"line_number":138,"context_line":"\r"},{"line_number":139,"context_line":"* Live migration: Until a mechanism is defined to migrate accelerator state\r"},{"line_number":140,"context_line":"  along with the instance, this is unsupported.\r"},{"line_number":141,"context_line":"\r"},{"line_number":142,"context_line":"Alternatives\r"},{"line_number":143,"context_line":"------------\r"},{"line_number":144,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_96668b56","line":141,"updated":"2018-10-19 13:17:18.000000000","message":"Good list of possible operations. Thanks","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"b827390178792f59c39efe83a7ecbc1a465e960c","unresolved":false,"context_lines":[{"line_number":162,"context_line":"Notifications impact\r"},{"line_number":163,"context_line":"--------------------\r"},{"line_number":164,"context_line":"\r"},{"line_number":165,"context_line":"Nova or Cyborg may choose to send notifications on specific state transitions.\r"},{"line_number":166,"context_line":"\r"},{"line_number":167,"context_line":"\r"},{"line_number":168,"context_line":"Other end user impact\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_56a6b3ae","line":165,"range":{"start_line":165,"start_character":60,"end_line":165,"end_character":78},"updated":"2018-10-19 13:17:18.000000000","message":"Nova already sends instance notifications for instance state transitions. By default those contain the flavor extra_specs therefore the device_profile name.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"44bc3a8097a022fef5dd2b82a24654f0a055d9c3","unresolved":false,"context_lines":[{"line_number":162,"context_line":"Notifications impact\r"},{"line_number":163,"context_line":"--------------------\r"},{"line_number":164,"context_line":"\r"},{"line_number":165,"context_line":"Nova or Cyborg may choose to send notifications on specific state transitions.\r"},{"line_number":166,"context_line":"\r"},{"line_number":167,"context_line":"\r"},{"line_number":168,"context_line":"Other end user impact\r"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3f79a3b5_f3a1caa9","line":165,"range":{"start_line":165,"start_character":60,"end_line":165,"end_character":78},"in_reply_to":"3f79a3b5_56a6b3ae","updated":"2018-10-27 04:02:17.000000000","message":"OK. Will drop.","commit_id":"3f5e34f13ac515d7fb34ba4b6fcd18323f7edc0f"},{"author":{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},"change_message_id":"13f56d942bf6a49e0ffa36198f5b6163d024387b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"accelerators should be handled the same way as other resources today during\r"},{"line_number":19,"context_line":"instance operations.\r"},{"line_number":20,"context_line":"\r"},{"line_number":21,"context_line":"The assignment of an accelerator to an instance is encapsulated as an\r"},{"line_number":22,"context_line":"Accelerator Record (ARQ) object, which could be in one of three possible\r"},{"line_number":23,"context_line":"states:\r"},{"line_number":24,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_3e1c3d12","line":21,"updated":"2019-06-20 01:56:43.000000000","message":"ARQ is acc req or acc record?","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":18,"context_line":"accelerators should be handled the same way as other resources today during\r"},{"line_number":19,"context_line":"instance operations.\r"},{"line_number":20,"context_line":"\r"},{"line_number":21,"context_line":"The assignment of an accelerator to an instance is encapsulated as an\r"},{"line_number":22,"context_line":"Accelerator Record (ARQ) object, which could be in one of three possible\r"},{"line_number":23,"context_line":"states:\r"},{"line_number":24,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_95ab0e74","line":21,"in_reply_to":"9fb8cfa7_3e1c3d12","updated":"2019-07-03 22:06:30.000000000","message":"Done","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b8872ebd38d6ee1b809557bdb9e796bad2d1b031","unresolved":false,"context_lines":[{"line_number":58,"context_line":"\r"},{"line_number":59,"context_line":"The list of supported operations (with the intended behaviors) are as follows:\r"},{"line_number":60,"context_line":"\r"},{"line_number":61,"context_line":"* When an instance is started, an ARQ is created (in unbound state) for each\r"},{"line_number":62,"context_line":"  accelerator requested by that instance\u0027s device profile [#devprof]_. Then\r"},{"line_number":63,"context_line":"  each ARQ is bound to an accelerator and attached to the instance. If the\r"},{"line_number":64,"context_line":"  instance start fails and a retry is needed, the ARQs are unbound\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_a10944dd","line":61,"range":{"start_line":61,"start_character":22,"end_line":61,"end_character":29},"updated":"2019-07-01 21:14:47.000000000","message":"this should perhaps be spelled \"spawned\" to disambiguate from \"restarted\" below.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":58,"context_line":"\r"},{"line_number":59,"context_line":"The list of supported operations (with the intended behaviors) are as follows:\r"},{"line_number":60,"context_line":"\r"},{"line_number":61,"context_line":"* When an instance is started, an ARQ is created (in unbound state) for each\r"},{"line_number":62,"context_line":"  accelerator requested by that instance\u0027s device profile [#devprof]_. Then\r"},{"line_number":63,"context_line":"  each ARQ is bound to an accelerator and attached to the instance. If the\r"},{"line_number":64,"context_line":"  instance start fails and a retry is needed, the ARQs are unbound\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_55b7d6d9","line":61,"range":{"start_line":61,"start_character":22,"end_line":61,"end_character":29},"in_reply_to":"9fb8cfa7_a10944dd","updated":"2019-07-03 22:06:30.000000000","message":"Done","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  instance). So, when the instance is unlocked, there is nothing to do.\r"},{"line_number":74,"context_line":"\r"},{"line_number":75,"context_line":"* When an instance is shelved, the ARQs are detached but not unbound. However,\r"},{"line_number":76,"context_line":"  the shelve-offload operation triggers the unbind and destroyal of the\r"},{"line_number":77,"context_line":"  associated ARQs. On an unshelve after offload, the build operation will go\r"},{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_831e5a0a","line":76,"range":{"start_line":76,"start_character":55,"end_line":76,"end_character":64},"updated":"2019-06-03 21:34:43.000000000","message":"destruction","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  instance). So, when the instance is unlocked, there is nothing to do.\r"},{"line_number":74,"context_line":"\r"},{"line_number":75,"context_line":"* When an instance is shelved, the ARQs are detached but not unbound. However,\r"},{"line_number":76,"context_line":"  the shelve-offload operation triggers the unbind and destroyal of the\r"},{"line_number":77,"context_line":"  associated ARQs. On an unshelve after offload, the build operation will go\r"},{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_f5ccc262","line":76,"range":{"start_line":76,"start_character":55,"end_line":76,"end_character":64},"in_reply_to":"9fb8cfa7_01fa90bb","updated":"2019-07-03 22:06:30.000000000","message":"Some folks in [1] already started doing that [2][3].\n\n[2] https://en.wiktionary.org/wiki/destroyal\n[3] https://journals.openedition.org/jso/812?file\u003d1","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  instance). So, when the instance is unlocked, there is nothing to do.\r"},{"line_number":74,"context_line":"\r"},{"line_number":75,"context_line":"* When an instance is shelved, the ARQs are detached but not unbound. However,\r"},{"line_number":76,"context_line":"  the shelve-offload operation triggers the unbind and destroyal of the\r"},{"line_number":77,"context_line":"  associated ARQs. On an unshelve after offload, the build operation will go\r"},{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_95d9ce23","line":76,"range":{"start_line":76,"start_character":55,"end_line":76,"end_character":64},"in_reply_to":"9fb8cfa7_831e5a0a","updated":"2019-07-03 22:06:30.000000000","message":"Done","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"b8872ebd38d6ee1b809557bdb9e796bad2d1b031","unresolved":false,"context_lines":[{"line_number":73,"context_line":"  instance). So, when the instance is unlocked, there is nothing to do.\r"},{"line_number":74,"context_line":"\r"},{"line_number":75,"context_line":"* When an instance is shelved, the ARQs are detached but not unbound. However,\r"},{"line_number":76,"context_line":"  the shelve-offload operation triggers the unbind and destroyal of the\r"},{"line_number":77,"context_line":"  associated ARQs. On an unshelve after offload, the build operation will go\r"},{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_01fa90bb","line":76,"range":{"start_line":76,"start_character":55,"end_line":76,"end_character":64},"in_reply_to":"9fb8cfa7_831e5a0a","updated":"2019-07-01 21:14:47.000000000","message":"I like \"destroyal\". We [1] are going to use that from now on.\n\n[1] the English-speaking world.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"},{"line_number":80,"context_line":"* When an instance is deleted, the ARQs are detached and unbound, and the\r"},{"line_number":81,"context_line":"  associated ARQs are destroyed. On a restore, it is expected that the build\r"},{"line_number":82,"context_line":"  operation will go through the scheduler again, so it is equivalent to an\r"},{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_63e6c619","line":83,"range":{"start_line":81,"start_character":33,"end_line":83,"end_character":17},"updated":"2019-06-03 21:34:43.000000000","message":"This isn\u0027t really true. I\u0027m assuming you\u0027re referring to a SOFT_DELETED server (which is based on configuration in nova and not a default behavior), but even then when restoring a soft-deleted server it doesn\u0027t go through the scheduler, we just reset some state so the nova-compute service hosting that instance doesn\u0027t reap it after a certain time.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"},{"line_number":80,"context_line":"* When an instance is deleted, the ARQs are detached and unbound, and the\r"},{"line_number":81,"context_line":"  associated ARQs are destroyed. On a restore, it is expected that the build\r"},{"line_number":82,"context_line":"  operation will go through the scheduler again, so it is equivalent to an\r"},{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_b5d64af1","line":83,"range":{"start_line":81,"start_character":33,"end_line":83,"end_character":17},"in_reply_to":"9fb8cfa7_63e6c619","updated":"2019-07-03 22:06:30.000000000","message":"Done","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":78,"context_line":"  through the scheduler again, so it is equivalent to an instance start.\r"},{"line_number":79,"context_line":"\r"},{"line_number":80,"context_line":"* When an instance is deleted, the ARQs are detached and unbound, and the\r"},{"line_number":81,"context_line":"  associated ARQs are destroyed. On a restore, it is expected that the build\r"},{"line_number":82,"context_line":"  operation will go through the scheduler again, so it is equivalent to an\r"},{"line_number":83,"context_line":"  instance start.\r"},{"line_number":84,"context_line":"\r"},{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_f59e0253","line":83,"range":{"start_line":81,"start_character":33,"end_line":83,"end_character":17},"in_reply_to":"9fb8cfa7_63e6c619","updated":"2019-07-03 22:06:30.000000000","message":"If that is the case","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"},{"line_number":90,"context_line":"  node.\r"},{"line_number":91,"context_line":"\r"},{"line_number":92,"context_line":"* Resize (with change of flavor and/or device profile): The original server is\r"},{"line_number":93,"context_line":"  stopped and a new server is started with the new flavor and/or device\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_83e3ba05","line":90,"range":{"start_line":88,"start_character":11,"end_line":90,"end_character":7},"updated":"2019-06-03 21:34:43.000000000","message":"Rebuild never reschedules to another node. Do you mean evacuate here?","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"d1d7290ff98b3c0f007d8b0b8f44873548c8fd44","unresolved":false,"context_lines":[{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"},{"line_number":90,"context_line":"  node.\r"},{"line_number":91,"context_line":"\r"},{"line_number":92,"context_line":"* Resize (with change of flavor and/or device profile): The original server is\r"},{"line_number":93,"context_line":"  stopped and a new server is started with the new flavor and/or device\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_8609addd","line":90,"range":{"start_line":88,"start_character":11,"end_line":90,"end_character":7},"in_reply_to":"7faddb67_8485305c","updated":"2019-08-07 01:01:03.000000000","message":"There is a comment in nova/conductor/manager.py, in rebuild_instance(), which says:\n# 1. rebuild - the instance.host is passed to rebuild on the\n#       same host and bypass the scheduler *unless* a new image was specified\n\nThis sounds like, if a new image is specified, apparently the scheduler is invoked and it could be rescheduled to a different host. Other comments in that method, however,clarify that a rebuild is always to the same host.\n\nUnfortunately, I don\u0027t have a multi-node setup to confirm any of this.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"7853fc2899ff630aa708d30c9850df6c73c8f37f","unresolved":false,"context_lines":[{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"},{"line_number":90,"context_line":"  node.\r"},{"line_number":91,"context_line":"\r"},{"line_number":92,"context_line":"* Resize (with change of flavor and/or device profile): The original server is\r"},{"line_number":93,"context_line":"  stopped and a new server is started with the new flavor and/or device\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_8485305c","line":90,"range":{"start_line":88,"start_character":11,"end_line":90,"end_character":7},"in_reply_to":"7faddb67_f5f5a284","updated":"2019-08-06 16:18:25.000000000","message":"That link no longer means anything since it wasn\u0027t using a tag or commit hash to make the link permanent so I don\u0027t know what this was about anymore.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":17813,"name":"wangzhh","email":"wzh_1993@126.com","username":"wangzhh"},"change_message_id":"13f56d942bf6a49e0ffa36198f5b6163d024387b","unresolved":false,"context_lines":[{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"},{"line_number":90,"context_line":"  node.\r"},{"line_number":91,"context_line":"\r"},{"line_number":92,"context_line":"* Resize (with change of flavor and/or device profile): The original server is\r"},{"line_number":93,"context_line":"  stopped and a new server is started with the new flavor and/or device\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_de1ac115","line":90,"range":{"start_line":88,"start_character":11,"end_line":90,"end_character":7},"in_reply_to":"9fb8cfa7_83e3ba05","updated":"2019-06-20 01:56:43.000000000","message":"https://github.com/openstack/nova/blob/master/nova/conductor/manager.py#L990\nPlz look at the comment, I think it is probably.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"7d2925d77601641ae76547b9d6719c0cfe5007c5","unresolved":false,"context_lines":[{"line_number":85,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same\r"},{"line_number":86,"context_line":"  flavor and server ID. If the instance can be placed in the same node after\r"},{"line_number":87,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the\r"},{"line_number":88,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs\r"},{"line_number":89,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new\r"},{"line_number":90,"context_line":"  node.\r"},{"line_number":91,"context_line":"\r"},{"line_number":92,"context_line":"* Resize (with change of flavor and/or device profile): The original server is\r"},{"line_number":93,"context_line":"  stopped and a new server is started with the new flavor and/or device\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7faddb67_f5f5a284","line":90,"range":{"start_line":88,"start_character":11,"end_line":90,"end_character":7},"in_reply_to":"9fb8cfa7_de1ac115","updated":"2019-07-03 22:06:30.000000000","message":"What wangzhh said.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":94,"context_line":"  profile. Within a time period, the resize can be confirmed or reverted. On\r"},{"line_number":95,"context_line":"  stop, the ARQs are detached from the original server but not unbound. On\r"},{"line_number":96,"context_line":"  confirm, the original server is deleted (and its ARQs are unbound and\r"},{"line_number":97,"context_line":"  destroyed); new ARQs are created for the new device profile, bound to\r"},{"line_number":98,"context_line":"  accelerators on the new compute node and attached to the new server. On\r"},{"line_number":99,"context_line":"  revert, the new server is deleted (but it has no accelerators at this\r"},{"line_number":100,"context_line":"  point), and the original server is attached to the same accelerators as\r"},{"line_number":101,"context_line":"  before.\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_a3b59ef0","line":98,"range":{"start_line":97,"start_character":14,"end_line":98,"end_character":70},"updated":"2019-06-03 21:34:43.000000000","message":"I would expect this to happen before the resize is confirmed so the user can verify the devices attached to the server (this would happen during the finish_resize step in the compute manager).","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":136,"context_line":"\r"},{"line_number":137,"context_line":"The following instance operation is not supported for now:\r"},{"line_number":138,"context_line":"\r"},{"line_number":139,"context_line":"* Live migration: Until a mechanism is defined to migrate accelerator state\r"},{"line_number":140,"context_line":"  along with the instance, this is unsupported.\r"},{"line_number":141,"context_line":"\r"},{"line_number":142,"context_line":"Alternatives\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_c3af7292","line":139,"updated":"2019-06-03 21:34:43.000000000","message":"Live migration with SR-IOV ports is probably a similar problem and was only recently supported:\n\nhttps://specs.openstack.org/openstack/nova-specs/specs/train/approved/libvirt-neutron-sriov-livemigration.html","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9aba58b92038501643e1d7fe1286e3a2c563f891","unresolved":false,"context_lines":[{"line_number":228,"context_line":"History\r"},{"line_number":229,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\r"},{"line_number":230,"context_line":"\r"},{"line_number":231,"context_line":"Optional section intended to be used each time the spec is updated to describe\r"},{"line_number":232,"context_line":"new design, API or any database schema updated. Useful to let reader\r"},{"line_number":233,"context_line":"understand what\u0027s happened along the time.\r"},{"line_number":234,"context_line":"\r"},{"line_number":235,"context_line":".. list-table:: Revisions\r"},{"line_number":236,"context_line":"   :header-rows: 1\r"}],"source_content_type":"text/x-rst","patch_set":3,"id":"9fb8cfa7_239e8e63","line":233,"range":{"start_line":231,"start_character":0,"end_line":233,"end_character":42},"updated":"2019-06-03 21:34:43.000000000","message":"Remove this templating.","commit_id":"a52a205dc7400feb011488a45bc5bf44658c770d"}],"specs/train/approved/instance-ops.rst":[{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","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":"3fa7e38b_f999f4ce","line":1,"updated":"2020-01-15 03:21:38.000000000","message":"This spec need to move to the ussuri directory, I saw it was in train now.\n\nAlthough the interaction spec [1] in nova was incorporated in the Train version, as the version iterations, Cyborg did not complete this operation, I think this should be migrated to the latest version to discuss.\n\n[1] http://specs.openstack.org/openstack/nova-specs/specs/ussuri/approved/nova-cyborg-interaction.html","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":64,"context_line":"  instance start fails and a retry is needed, the ARQs are unbound"},{"line_number":65,"context_line":"  and then bound to accelerators in one or more devices on the retry host."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"* When an instance is stopped, paused or suspended, the  ARQs are"},{"line_number":68,"context_line":"  detached from the instance but not unbound.  Conversely, when the"},{"line_number":69,"context_line":"  instance is restarted, unpaused or resumed, ARQs with same accelerator"},{"line_number":70,"context_line":"  instances are re-attached."}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_1942d0ad","line":67,"range":{"start_line":67,"start_character":56,"end_line":67,"end_character":57},"updated":"2020-01-15 03:21:38.000000000","message":"redundant white space","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":65,"context_line":"  and then bound to accelerators in one or more devices on the retry host."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"* When an instance is stopped, paused or suspended, the  ARQs are"},{"line_number":68,"context_line":"  detached from the instance but not unbound.  Conversely, when the"},{"line_number":69,"context_line":"  instance is restarted, unpaused or resumed, ARQs with same accelerator"},{"line_number":70,"context_line":"  instances are re-attached."},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_393f8c23","line":68,"range":{"start_line":68,"start_character":46,"end_line":68,"end_character":47},"updated":"2020-01-15 03:21:38.000000000","message":"redundant white space","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":86,"context_line":"* Rebuild: This can be viewed as a delete followed by a start with the same"},{"line_number":87,"context_line":"  flavor and server ID. If the instance can be placed in the same node after"},{"line_number":88,"context_line":"  restart, the ARQs are detached but not unbound, and attached back after the"},{"line_number":89,"context_line":"  rebuild. If the instance needs to be rescheduled on another node, the ARQs"},{"line_number":90,"context_line":"  will be unbound (but not destroyed) and then bound and attached on the new"},{"line_number":91,"context_line":"  node."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"* Resize (with change of flavor and/or device profile): The original server is"},{"line_number":94,"context_line":"  stopped and a new server is started with the new flavor and/or device"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_b482a1fe","line":91,"range":{"start_line":89,"start_character":11,"end_line":91,"end_character":7},"updated":"2020-01-15 03:21:38.000000000","message":"In PS3, Matt ponit this [1], the **Rebuild** never reschedules to another node, I think you can move this to the **evacuate** action, on line112\n\nIf you wrote *this* here, it\u0027s confusing.\n\n[1]https://review.opendev.org/#/c/605237/3/specs/stein/approved/instance-ops.rst@88","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":93,"context_line":"* Resize (with change of flavor and/or device profile): The original server is"},{"line_number":94,"context_line":"  stopped and a new server is started with the new flavor and/or device"},{"line_number":95,"context_line":"  profile. Within a time period, the resize can be confirmed or reverted. On"},{"line_number":96,"context_line":"  stop, the ARQs are detached from the original server but not unbound. On"},{"line_number":97,"context_line":"  confirm, the original server is deleted (and its ARQs are unbound and"},{"line_number":98,"context_line":"  destroyed); new ARQs are created for the new device profile, bound to"},{"line_number":99,"context_line":"  accelerators on the new compute node and attached to the new server. On"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_1416154c","line":96,"updated":"2020-01-15 03:21:38.000000000","message":"+1, agree with this deal, while the server is resizing, we should check the ARQ before confirmed or reverted, and then determinate to do detached/unbound (then attached to the new server) or revert.","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":132,"context_line":"  actions to prevent such scenarios, at least for well-behaved devices. For"},{"line_number":133,"context_line":"  example, if the device is passed through to the VM via vfio, the hypervisor"},{"line_number":134,"context_line":"  may issue a vfio reset, which should translate to a PCI function-level"},{"line_number":135,"context_line":"  reset for the device.  A well-behaved device should abort DMA and other"},{"line_number":136,"context_line":"  PCI transactions after such reset."},{"line_number":137,"context_line":""},{"line_number":138,"context_line":"The following instance operation is not supported for now:"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_f45ed9e6","line":135,"range":{"start_line":135,"start_character":24,"end_line":135,"end_character":25},"updated":"2020-01-15 03:21:38.000000000","message":"redundant white space","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"The following instance operation is not supported for now:"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"* Live migration: Until a mechanism is defined to migrate accelerator state"},{"line_number":141,"context_line":"  along with the instance, this is unsupported."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_d4fe3db4","line":140,"updated":"2020-01-15 03:21:38.000000000","message":"Yes, today carrying instances of PCI devices does not support live migration.","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":21672,"name":"Sundar Nadathur","email":"sundar.nadathur@intel.com","username":"nsundar"},"change_message_id":"797a78aa99e9537adc4ac7cefa2e10ce06a21ad4","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"The following instance operation is not supported for now:"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"* Live migration: Until a mechanism is defined to migrate accelerator state"},{"line_number":141,"context_line":"  along with the instance, this is unsupported."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_b83d8f2a","line":140,"in_reply_to":"3fa7e38b_9af46f57","updated":"2020-01-17 05:20:06.000000000","message":"Only networking devices can benefit from this. \n\nNon-networking accelerators -- GPUs, AI chips, etc. -- supported by Cyborg today cannot benefit from these.","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"cca2fb05ea8ebe4eb5a470c29b269a222e69600c","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"The following instance operation is not supported for now:"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"* Live migration: Until a mechanism is defined to migrate accelerator state"},{"line_number":141,"context_line":"  along with the instance, this is unsupported."},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_9af46f57","line":140,"in_reply_to":"3fa7e38b_d4fe3db4","updated":"2020-01-15 05:52:21.000000000","message":"Sorry, not all PCI instance cannot do live migration, there is a new feature for live migration with SR-IOV ports.\n\n[1]https://specs.openstack.org/openstack/nova-specs/specs/train/approved/libvirt-neutron-sriov-livemigration.html\nhttps://review.opendev.org/#/q/topic:bp/libvirt-neutron-sriov-livemigration+status:merged","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":219,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":220,"context_line":""},{"line_number":221,"context_line":".. [#nova-accel] `Nova Cyborg Interaction Specification"},{"line_number":222,"context_line":"   \u003chttps://review.openstack.org/#/c/603955\u003e`_"},{"line_number":223,"context_line":""},{"line_number":224,"context_line":".. [#ops] `OpenStack instance operations"},{"line_number":225,"context_line":"   \u003chttps://developer.openstack.org/api-guide/compute/server_concepts.html#server-actions\u003e`_"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_74dd093e","line":222,"range":{"start_line":222,"start_character":4,"end_line":222,"end_character":43},"updated":"2020-01-15 03:21:38.000000000","message":"nit: This commit was merged, and we can use it\u0027s valid link instead of the gerrit link. http://specs.openstack.org/openstack/nova-specs/specs/ussuri/approved/nova-cyborg-interaction.html","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"368388b62291a745bebdd37097ef9bab86e4c218","unresolved":false,"context_lines":[{"line_number":239,"context_line":"   * - Stein"},{"line_number":240,"context_line":"     - Updated"},{"line_number":241,"context_line":"   * - Train"},{"line_number":242,"context_line":"     - Updated"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3fa7e38b_1415b5e6","line":242,"updated":"2020-01-15 03:21:38.000000000","message":"* - Ussuri\n     - Introduced","commit_id":"7ecc32d08209b1bc3331da616a1f5aab4f0f65aa"}]}
