)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17920,"name":"Jianghua Wang","email":"jianghua.wang@citrix.com","username":"wjhfresh"},"change_message_id":"66e336fc1a5f6162f6bc2fd091661f2761078e03","unresolved":false,"context_lines":[{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Close-bug: 1677937"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I07f85a53288feaa6b0e78e316fa580e4588a3d39"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7ffa3b31_abe0d1cd","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":10},"updated":"2017-04-18 02:58:35.000000000","message":"\u003d\u003e Closes-Bug:","commit_id":"6eb318d57fb7685e8d434e78a89fb81ddc7be116"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"6687d0e3d4f092f2ead00f6f35a051b121395c18","unresolved":false,"context_lines":[{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Close-bug: 1677937"},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Change-Id: I07f85a53288feaa6b0e78e316fa580e4588a3d39"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7ffa3b31_c0cad718","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":10},"in_reply_to":"7ffa3b31_abe0d1cd","updated":"2017-04-18 05:10:02.000000000","message":"Done","commit_id":"6eb318d57fb7685e8d434e78a89fb81ddc7be116"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"XenAPI: Create linux bridge in dest host during live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_2873ca4f","line":9,"range":{"start_line":9,"start_character":21,"end_line":9,"end_character":30},"updated":"2017-06-07 18:04:55.000000000","message":"s/migration/migrate/","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"XenAPI: Create linux bridge in dest host during live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_7893f650","line":9,"range":{"start_line":9,"start_character":21,"end_line":9,"end_character":30},"in_reply_to":"df140735_2873ca4f","updated":"2017-06-08 03:03:50.000000000","message":"Sorry for my bad spelling, will refine the commit message","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":7,"context_line":"XenAPI: Create linux bridge in dest host during live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_a89c7a5d","line":10,"range":{"start_line":10,"start_character":65,"end_line":10,"end_character":72},"updated":"2017-06-07 18:04:55.000000000","message":"s/floatig/floating/","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":7,"context_line":"XenAPI: Create linux bridge in dest host during live migration"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_58983269","line":10,"range":{"start_line":10,"start_character":65,"end_line":10,"end_character":72},"in_reply_to":"df140735_a89c7a5d","updated":"2017-06-08 03:03:50.000000000","message":"Done","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_08b7e6da","line":11,"range":{"start_line":11,"start_character":10,"end_line":11,"end_character":17},"updated":"2017-06-07 18:04:55.000000000","message":"s/anymore/any more/","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_48ab9e74","line":11,"range":{"start_line":11,"start_character":3,"end_line":11,"end_character":6},"updated":"2017-06-07 18:04:55.000000000","message":"s/fix/fixed/","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_389d7e59","line":11,"range":{"start_line":11,"start_character":10,"end_line":11,"end_character":17},"in_reply_to":"df140735_08b7e6da","updated":"2017-06-08 03:03:50.000000000","message":"Done","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":8,"context_line":""},{"line_number":9,"context_line":"We found VM can live migration successfully with XenServer hypervisor,"},{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_18a2ba9b","line":11,"range":{"start_line":11,"start_character":3,"end_line":11,"end_character":6},"in_reply_to":"df140735_48ab9e74","updated":"2017-06-08 03:03:50.000000000","message":"Done","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: 1677937"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_48c4be40","line":13,"range":{"start_line":13,"start_character":8,"end_line":13,"end_character":10},"updated":"2017-06-07 18:04:55.000000000","message":"s/lack of/don\u0027t establish the/","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":10,"context_line":"but after migrating to destination host, we cannot ping the VM\u0027s floatig"},{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: 1677937"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_f89ee652","line":13,"range":{"start_line":13,"start_character":8,"end_line":13,"end_character":10},"in_reply_to":"df140735_48c4be40","updated":"2017-06-08 03:03:50.000000000","message":"Done","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: 1677937"},{"line_number":17,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"df140735_0805a67a","line":14,"range":{"start_line":14,"start_character":6,"end_line":14,"end_character":41},"updated":"2017-06-07 18:04:55.000000000","message":"remove \", this patch is to fix this problem\" :)","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":11,"context_line":"or fix IP anymore. The problem is that, during live migration, we only"},{"line_number":12,"context_line":"create the network in destination host which the VM\u0027s VIF connect to, but"},{"line_number":13,"context_line":"we lack of linux bridge and the corresponding veth pair to ovs bridge"},{"line_number":14,"context_line":"br-int, this patch is to fix this problem."},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Closes-Bug: 1677937"},{"line_number":17,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"bf091321_d8ab2273","line":14,"range":{"start_line":14,"start_character":6,"end_line":14,"end_character":41},"in_reply_to":"df140735_0805a67a","updated":"2017-06-08 03:03:50.000000000","message":"Done","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"}],"nova/virt/xenapi/vif.py":[{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"b4e8191403ab1402293186fb13c1bec24af673a8","unresolved":false,"context_lines":[{"line_number":555,"context_line":""},{"line_number":556,"context_line":"        self._ovs_set_if_external_id(interface, \u0027attached-mac\u0027, mac)"},{"line_number":557,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-id\u0027, iface_id)"},{"line_number":558,"context_line":"        self._ovs_set_if_external_id(interface, \u0027xs-vif-uuid\u0027, iface_id)"},{"line_number":559,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-status\u0027, status)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def _brctl_add_if(self, bridge_name, interface_name):"}],"source_content_type":"text/x-python","patch_set":3,"id":"ffe62b97_e429a09b","line":558,"updated":"2017-03-30 15:35:33.000000000","message":"This is changing the semantics here - is that *really* wanted?\nvif[\u0027id\u0027] is not the same as the vif_uuid","commit_id":"e90a75521dc24e2122892c895129c551c00ca626"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"73c6cf9c457be9e7251586a852c90eb4041f1cc3","unresolved":false,"context_lines":[{"line_number":555,"context_line":""},{"line_number":556,"context_line":"        self._ovs_set_if_external_id(interface, \u0027attached-mac\u0027, mac)"},{"line_number":557,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-id\u0027, iface_id)"},{"line_number":558,"context_line":"        self._ovs_set_if_external_id(interface, \u0027xs-vif-uuid\u0027, iface_id)"},{"line_number":559,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-status\u0027, status)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def _brctl_add_if(self, bridge_name, interface_name):"}],"source_content_type":"text/x-python","patch_set":3,"id":"dfeb2761_d403f50e","line":558,"in_reply_to":"ffe62b97_e429a09b","updated":"2017-03-31 01:43:30.000000000","message":"This is to set OVS port qvo-XXX, so I think we should set the same value as its real iface-id and neutron only use iface-id. the other way is to delete this setting as there is no other places using xs-vif-uuid when https://review.openstack.org/#/c/447415/ merged","commit_id":"e90a75521dc24e2122892c895129c551c00ca626"},{"author":{"_account_id":6735,"name":"Bob Ball","email":"bob.ball@citrix.com","username":"bob-ball"},"change_message_id":"091ebf1859ff5315b24861f434dab6c526828418","unresolved":false,"context_lines":[{"line_number":555,"context_line":""},{"line_number":556,"context_line":"        self._ovs_set_if_external_id(interface, \u0027attached-mac\u0027, mac)"},{"line_number":557,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-id\u0027, iface_id)"},{"line_number":558,"context_line":"        self._ovs_set_if_external_id(interface, \u0027xs-vif-uuid\u0027, iface_id)"},{"line_number":559,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-status\u0027, status)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def _brctl_add_if(self, bridge_name, interface_name):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7ffa3b31_f37da41c","line":558,"updated":"2017-04-18 12:19:36.000000000","message":"I really don\u0027t understand why you\u0027ve changed xs-vif-uuid from vif_uuid to iface_id.\nMore explanation is needed.","commit_id":"60e9c16b7919ead7dd60e9a54c20b803781870fb"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"3901dc35ee30cbb1a0f10a83b95c663005a95612","unresolved":false,"context_lines":[{"line_number":555,"context_line":""},{"line_number":556,"context_line":"        self._ovs_set_if_external_id(interface, \u0027attached-mac\u0027, mac)"},{"line_number":557,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-id\u0027, iface_id)"},{"line_number":558,"context_line":"        self._ovs_set_if_external_id(interface, \u0027xs-vif-uuid\u0027, iface_id)"},{"line_number":559,"context_line":"        self._ovs_set_if_external_id(interface, \u0027iface-status\u0027, status)"},{"line_number":560,"context_line":""},{"line_number":561,"context_line":"    def _brctl_add_if(self, bridge_name, interface_name):"}],"source_content_type":"text/x-python","patch_set":6,"id":"5ff73747_431ddf0d","line":558,"in_reply_to":"7ffa3b31_f37da41c","updated":"2017-05-03 06:45:32.000000000","message":"For this live-migration fix, indeed, there is no need to change xs-vif-uuid from vif_uuid to iface_id. But during live-migration, we want to create both interim bridge and linux bridge in destination in prepare stage (see https://review.openstack.org/#/c/451657/6/nova/virt/xenapi/vmops.py Line:2399 Line:2392), but at this stage, the VIF isn\u0027t created, so there is no vif_uuid, so using iface-id (and because this is the ovs port qvo-xxx, using iface-id is correct).\n\nThe reason that we want to create linux bridge in prepare stage during live-migration is because if it failed at this stage, there is rollback to delete these linux bridge in destination, see https://github.com/openstack/nova/blob/ef1c539ad1f4b94b077f606502c8c53daf6620d2/nova/compute/manager.py#L5325\n\nBut if we do it in post_live_migration_dest, there is no chance to delete such linux bridge https://github.com/openstack/nova/blob/ef1c539ad1f4b94b077f606502c8c53daf6620d2/nova/compute/manager.py#L5547","commit_id":"60e9c16b7919ead7dd60e9a54c20b803781870fb"}],"nova/virt/xenapi/vmops.py":[{"author":{"_account_id":17920,"name":"Jianghua Wang","email":"jianghua.wang@citrix.com","username":"wjhfresh"},"change_message_id":"66e336fc1a5f6162f6bc2fd091661f2761078e03","unresolved":false,"context_lines":[{"line_number":2384,"context_line":"        return vif_map"},{"line_number":2385,"context_line":""},{"line_number":2386,"context_line":"    def create_networks_and_bridges(self, instance, network_info):"},{"line_number":2387,"context_line":"        # Creating an interim bridge in destination host before live_migration"},{"line_number":2388,"context_line":"        vif_map \u003d {}"},{"line_number":2389,"context_line":"        for vif in network_info:"},{"line_number":2390,"context_line":"            network_ref \u003d self.vif_driver.create_vif_interim_network(vif)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7ffa3b31_eb1c99c2","line":2387,"updated":"2017-04-18 02:58:35.000000000","message":"Also update the comment accordingly?","commit_id":"6eb318d57fb7685e8d434e78a89fb81ddc7be116"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"6687d0e3d4f092f2ead00f6f35a051b121395c18","unresolved":false,"context_lines":[{"line_number":2384,"context_line":"        return vif_map"},{"line_number":2385,"context_line":""},{"line_number":2386,"context_line":"    def create_networks_and_bridges(self, instance, network_info):"},{"line_number":2387,"context_line":"        # Creating an interim bridge in destination host before live_migration"},{"line_number":2388,"context_line":"        vif_map \u003d {}"},{"line_number":2389,"context_line":"        for vif in network_info:"},{"line_number":2390,"context_line":"            network_ref \u003d self.vif_driver.create_vif_interim_network(vif)"}],"source_content_type":"text/x-python","patch_set":5,"id":"7ffa3b31_e0c71312","line":2387,"in_reply_to":"7ffa3b31_eb1c99c2","updated":"2017-04-18 05:10:02.000000000","message":"Done","commit_id":"6eb318d57fb7685e8d434e78a89fb81ddc7be116"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"af184f9f798b621f710fd094329b2072ec9f3975","unresolved":false,"context_lines":[{"line_number":1948,"context_line":""},{"line_number":1949,"context_line":"        for device, vif in enumerate(network_info):"},{"line_number":1950,"context_line":"            LOG.debug(\u0027Create VIF %s\u0027, vif, instance\u003dinstance)"},{"line_number":1951,"context_line":"            self.vif_driver.create_linux_bridge(instance, vif)"},{"line_number":1952,"context_line":"            vif_ref \u003d self.vif_driver.plug(instance, vif,"},{"line_number":1953,"context_line":"                                           vm_ref\u003dvm_ref, device\u003ddevice)"},{"line_number":1954,"context_line":"            vif_refs.append(vif_ref)"}],"source_content_type":"text/x-python","patch_set":8,"id":"df140735_683ae234","line":1951,"updated":"2017-06-07 18:04:55.000000000","message":"Doesn\u0027t this kind of assume that all VIF types used by VMs launched with XenAPI will require a Linux integration bridge? Is that true? If not, this will essentially end up creating linux bridges that will never be used on the host, right?\n\nI guess I\u0027m wondering why the creation of an integration bridge (if that\u0027s what this really is?) should actually be done in the vif_driver.plug() method since the vif driver knows whether the Linux bridge is necessary.","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"7f4f6ad062f2522cd62be2d05064bbb38c0e4a30","unresolved":false,"context_lines":[{"line_number":1948,"context_line":""},{"line_number":1949,"context_line":"        for device, vif in enumerate(network_info):"},{"line_number":1950,"context_line":"            LOG.debug(\u0027Create VIF %s\u0027, vif, instance\u003dinstance)"},{"line_number":1951,"context_line":"            self.vif_driver.create_linux_bridge(instance, vif)"},{"line_number":1952,"context_line":"            vif_ref \u003d self.vif_driver.plug(instance, vif,"},{"line_number":1953,"context_line":"                                           vm_ref\u003dvm_ref, device\u003ddevice)"},{"line_number":1954,"context_line":"            vif_refs.append(vif_ref)"}],"source_content_type":"text/x-python","patch_set":8,"id":"7f231b9d_f98713b6","line":1951,"in_reply_to":"bf091321_73e677eb","updated":"2017-06-09 16:07:19.000000000","message":"OK, I understand a bit better now. I guess you need the Linux bridge to place iptables rules on because your version of OpenVSwitch is older? OVS 2.5 and beyond supports attached iptables rules directly to an OVS bridge, thus there\u0027s no need for this \"hybrid LB/OVS\" approach.\n\nRegarding using the vif_driver.plug() to do the Linux bridge creation, I was referring to doing something like we do for the ovs_hybrid os-vif plugin here:\n\nhttps://github.com/openstack/os-vif/blob/master/vif_plug_ovs/ovs.py#L133\n\nThe os-vif\u0027s reference OVS plugin\u0027s plug() method will ensure that the linux bridge used for security group rules (the \"hybrid approach\") exists.","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"},{"author":{"_account_id":17922,"name":"Huan Xie","email":"huan.xie@citrix.com","username":"huan"},"change_message_id":"61dc66b1e9d616bed13d43cb0fa90d0a801f6be2","unresolved":false,"context_lines":[{"line_number":1948,"context_line":""},{"line_number":1949,"context_line":"        for device, vif in enumerate(network_info):"},{"line_number":1950,"context_line":"            LOG.debug(\u0027Create VIF %s\u0027, vif, instance\u003dinstance)"},{"line_number":1951,"context_line":"            self.vif_driver.create_linux_bridge(instance, vif)"},{"line_number":1952,"context_line":"            vif_ref \u003d self.vif_driver.plug(instance, vif,"},{"line_number":1953,"context_line":"                                           vm_ref\u003dvm_ref, device\u003ddevice)"},{"line_number":1954,"context_line":"            vif_refs.append(vif_ref)"}],"source_content_type":"text/x-python","patch_set":8,"id":"bf091321_73e677eb","line":1951,"in_reply_to":"df140735_683ae234","updated":"2017-06-08 03:03:50.000000000","message":"Hi Jay, VM should be connected to a linux bridge for the purpose of neutron security group, but the linux bridge is not integration bridge in neutron\u0027s perspective of view. The integration bridge is an OVS bridge with default name br-int. It will looks like VM(VIF) -\u003e interim-bridge -\u003e qbr -\u003e br-int in compute node. Here is the picture http://citrix-openstack.siteleaf.net/uploads/neutron-vlan-v2-c30545.png from https://www.citrix.com/blogs/2016/09/13/xenserver-and-neutron-in-mos/ \nWith upstream nova code, we created the linux bridge qbr within function vif_driver.plug(), but I noticed that during live migration, VM\u0027s VIF is only connected with our internal interim bridge, but the interim bridge isn\u0027t connected to qbr (and there is no qbr at all in destination host), so the link looks like VM(VIF) -\u003e interim-bridge, so VM is not accessable.\n\np.s. interim-bridge is used to fix one of XenAPI bugs, with normal neutron case, it\u0027s VM(VIF) -\u003e qbr -\u003e br-int\n\nAnd I also tried the other way of fixing this problem, see my patch https://review.openstack.org/#/c/462017/1, which is to keep the creation of linux bridge qbr within function vif_driver.plug() which can also work. But there is one concern, if we do this way, we will create the linux bridge qbr in dest host in post_live_migration_at_destination() https://review.openstack.org/#/c/462017/1/nova/virt/xenapi/vmops.py@2471, but this means when VM is already migrated to dest host, the e2e network connection isn\u0027t ready, so maybe it will cost a bit longer time to make the VM be accessable\n\nBut I also agree with you that making the creationg of linux bridge with vif_driver.plug() can hide implementaion details, could you give some suggestion on this part? Thanks a lot:)","commit_id":"1d671e01e1d22914c4819d2a9b89de7ffbb7ad17"}]}
