)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a4ebf9aabf7ed11b1d02b50e78925799f7d9f711","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"When checking oslo.versionedobjects fields for backward compat:"},{"line_number":24,"context_line":"- Use \u0027field in obj.fields\u0027 to check if field exists in schema"},{"line_number":25,"context_line":"- Use \u0027field in obj\u0027 to check if field value is set"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Depends-On: https://review.opendev.org/c/openstack/os-vif/+/971231"},{"line_number":28,"context_line":"Generated-By: Cursor claude-opus-4.5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7d1a41da_1f3fa526","line":25,"updated":"2026-02-03 10:46:42.000000000","message":"I guess we did this to support different os-vif versions. Could we eventually bump the min os-vif version on nova master and remove the compatibility code?","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"83074cbe26f3c0fad5733d7c4aa51f1f16632e86","unresolved":true,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"When checking oslo.versionedobjects fields for backward compat:"},{"line_number":24,"context_line":"- Use \u0027field in obj.fields\u0027 to check if field exists in schema"},{"line_number":25,"context_line":"- Use \u0027field in obj\u0027 to check if field value is set"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Depends-On: https://review.opendev.org/c/openstack/os-vif/+/971231"},{"line_number":28,"context_line":"Generated-By: Cursor claude-opus-4.5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"d5bf6097_31bce854","line":25,"in_reply_to":"7d1a41da_1f3fa526","updated":"2026-02-03 11:31:28.000000000","message":"yes we can and i will in a follow up patch.\npossibel for 2026.2\n\nbasiclaly i wrote the code this way for 2 reasons first\nwe can safely backport the nova change if we want to upstream or downstream\nwithout a strict dependency on the os-vif or the neutron changes meaning we dont have a strict order we need to maintain.\n\nthe other reason i did this is while i wanted to modify one of our zuul jobs to enable this i didn\u0027t want to have to wait for the os-vif release to happen to have the initial patch be merge-able.\n\nthat kind related ot the first reason but more driven by the fact i was not sure if we would get the os-vif release done in a timely manner or if it would take a few weeks to happen and make it through the requirement repo ectra.","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6f2145209fa761062a56f2735587fd244c4face2","unresolved":false,"context_lines":[{"line_number":22,"context_line":""},{"line_number":23,"context_line":"When checking oslo.versionedobjects fields for backward compat:"},{"line_number":24,"context_line":"- Use \u0027field in obj.fields\u0027 to check if field exists in schema"},{"line_number":25,"context_line":"- Use \u0027field in obj\u0027 to check if field value is set"},{"line_number":26,"context_line":""},{"line_number":27,"context_line":"Depends-On: https://review.opendev.org/c/openstack/os-vif/+/971231"},{"line_number":28,"context_line":"Generated-By: Cursor claude-opus-4.5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"e067e224_b1fdd019","line":25,"in_reply_to":"d5bf6097_31bce854","updated":"2026-02-03 13:30:18.000000000","message":"+1 for back-portability.","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":13861,"name":"yatin","email":"ykarel@redhat.com","username":"yatinkarel"},"change_message_id":"217b57c0850b763a1d783454d8b2efde554357ba","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"36330eb4_3fdb1338","updated":"2026-01-22 04:03:20.000000000","message":"Also validated in https://review.opendev.org/c/openstack/neutron/+/972820","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6f2145209fa761062a56f2735587fd244c4face2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"b986490a_2dc7c5c0","updated":"2026-02-03 13:30:18.000000000","message":"Looks good","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a4ebf9aabf7ed11b1d02b50e78925799f7d9f711","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"7a9407cf_de896cf7","updated":"2026-02-03 10:46:42.000000000","message":"Two questions but otherwise looks OK","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e3d86d3a8703bac17e9e2de78f50bfe259241fd2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"4ec7fb1c_8aa27e3f","updated":"2026-02-05 00:00:22.000000000","message":"recheck gate fixed","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"60ad3edb039037af89f031a9ccd8014b188a8178","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"d77da746_cc1dedb7","updated":"2026-01-21 19:00:01.000000000","message":"recheck ssh timeouts in volume test in nova-next\n\ni don\u0027t see anything obvious in the logs.\n\nnote that the new code added in this patch is also disabled so this is very unlikely to be related","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d45815a1815ece09c6d979fb821ea23418185b05","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"5c5c13c3_86c6a05d","updated":"2026-01-21 15:27:51.000000000","message":"recheck unresltaed ceph multistore failure due to encypted volumes","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"8d730da85564b6887421a28300d714894b28f9e1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"115552f3_2c34747f","updated":"2026-01-21 16:09:53.000000000","message":"recheck updated os-vif patch","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a98270ad4816c76e820465e03d4faddee59a4951","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"40273aa5_7e253b96","updated":"2026-01-21 16:11:13.000000000","message":"recheck updated os-vif patch","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"a6da665bb13e58b3f407a7b21bdeaa02c42eaca3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"f24c8b30_e5552ca7","updated":"2026-02-05 11:59:40.000000000","message":"sigh. with the new os-vif release there are some unit test i did not update for that.\nits good that we caught this before merge  but i guess i need to respin to fix that","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"1585e2d680d01dc036cc4fc3b22b55b476db05a2","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d570fb2f_8ed14419","updated":"2026-02-05 22:21:47.000000000","message":"Updates look good to me and align with the changes newly released in os-vif 4.3.0:\n\nhttps://github.com/openstack/os-vif/commit/eba8007607381736b23e0a0ac672981e726fd8ee\n\nThis was previously approved but I think it would be best for a second reviewer to also sanity check before re-applying +W","commit_id":"264e868d4931595140260c0f655a10b525be38f7"}],"nova/network/model.py":[{"author":{"_account_id":16688,"name":"Rodolfo Alonso","email":"ralonsoh@redhat.com","username":"rodolfo-alonso-hernandez"},"change_message_id":"6511b1242538fbd03c80c0508837b30478d392ab","unresolved":true,"context_lines":[{"line_number":98,"context_line":"# Specifies whether os-vif should create the TAP device. When True, os-vif"},{"line_number":99,"context_line":"# will pre-create the TAP device before adding it to OVS, reducing live"},{"line_number":100,"context_line":"# migration downtime. See bug #2069718."},{"line_number":101,"context_line":"VIF_DETAILS_OS_VIF_TAP_CREATION \u003d \u0027os_vif_tap_creation\u0027"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"# Define supported virtual NIC types. VNIC_TYPE_DIRECT and VNIC_TYPE_MACVTAP"},{"line_number":104,"context_line":"# are used for SR-IOV ports"}],"source_content_type":"text/x-python","patch_set":2,"id":"741317b7_656ddd46","line":101,"range":{"start_line":101,"start_character":35,"end_line":101,"end_character":54},"updated":"2026-01-13 10:08:18.000000000","message":"I changed the name according to your comments: https://review.opendev.org/c/openstack/neutron/+/972039. I used \"ovs_create_tap\".","commit_id":"ea169e222531d99dff29ce9dee4279cd597c25fc"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"30a5eccfddb42e4df513101588bf0411e5c2b9f2","unresolved":false,"context_lines":[{"line_number":98,"context_line":"# Specifies whether os-vif should create the TAP device. When True, os-vif"},{"line_number":99,"context_line":"# will pre-create the TAP device before adding it to OVS, reducing live"},{"line_number":100,"context_line":"# migration downtime. See bug #2069718."},{"line_number":101,"context_line":"VIF_DETAILS_OS_VIF_TAP_CREATION \u003d \u0027os_vif_tap_creation\u0027"},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"# Define supported virtual NIC types. VNIC_TYPE_DIRECT and VNIC_TYPE_MACVTAP"},{"line_number":104,"context_line":"# are used for SR-IOV ports"}],"source_content_type":"text/x-python","patch_set":2,"id":"0676a3e6_98e4400d","line":101,"range":{"start_line":101,"start_character":35,"end_line":101,"end_character":54},"in_reply_to":"741317b7_656ddd46","updated":"2026-01-14 19:08:30.000000000","message":"Done","commit_id":"ea169e222531d99dff29ce9dee4279cd597c25fc"}],"nova/tests/unit/virt/libvirt/test_vif.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"f6a0591de32bbefcb38129bc80fe841767618435","unresolved":true,"context_lines":[{"line_number":1857,"context_line":"             \u003cmac address\u003d\"22:52:25:62:e2:aa\"/\u003e"},{"line_number":1858,"context_line":"             \u003cmodel type\u003d\"virtio\"/\u003e"},{"line_number":1859,"context_line":"             \u003cmtu size\u003d\"9000\"/\u003e"},{"line_number":1860,"context_line":"             \u003ctarget dev\u003d\"nicdc065497-3c\" managed\u003d\"no\"/\u003e"},{"line_number":1861,"context_line":"             \u003cbandwidth\u003e"},{"line_number":1862,"context_line":"              \u003cinbound average\u003d\"100\" peak\u003d\"200\" burst\u003d\"300\"/\u003e"},{"line_number":1863,"context_line":"              \u003coutbound average\u003d\"10\" peak\u003d\"20\" burst\u003d\"30\"/\u003e"}],"source_content_type":"text/x-python","patch_set":5,"id":"8f267686_b3934634","line":1860,"updated":"2026-02-05 18:59:56.000000000","message":"oh no this is correct \nhttps://libvirt.org/formatdomain.html#generic-ethernet-connection","commit_id":"264e868d4931595140260c0f655a10b525be38f7"}],"nova/virt/libvirt/vif.py":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"83074cbe26f3c0fad5733d7c4aa51f1f16632e86","unresolved":true,"context_lines":[{"line_number":476,"context_line":""},{"line_number":477,"context_line":"        # TODO(sean-k-mooney): we should always delegate to os-vif and have"},{"line_number":478,"context_line":"        # os-vif create the tap once we are sure all compute nodes are"},{"line_number":479,"context_line":"        # upgraded. Simplify this logic in 2026.2+"},{"line_number":480,"context_line":"        if create_tap:"},{"line_number":481,"context_line":"            # os-vif will create the TAP device, so use ethernet-type VIF"},{"line_number":482,"context_line":"            # and set managed\u003dno so libvirt uses the existing TAP device"}],"source_content_type":"text/x-python","patch_set":4,"id":"97636ecd_d7c1fe73","line":479,"updated":"2026-02-03 11:31:28.000000000","message":"this todo is here because i plan to simplfy this logic and bump the min os-vif version once we cut rc1\n\ni will see if i can start on that patch next week and then -w it until after we curt rc1.\n\nthe other reasons not to bump the os-vif version yes it for 2026.1 there is a new neutorn config option to opt into this functionatly to allow use to have mixed comptues with and with out this and do a roling upgrade\n\nthat new config option is deprecated for removal imiedatly and will be removed and hardcoded to true (always trunign the new flow on) in 2026.2\n\nso we dont actully need to have a hard dep on the new version until then.\n\nmy current plan for better testing on the nova side is to modify the nova-live-migration job to enable this mode explcitly once the new os-vif is in upper-constraints then do the min version bump in a seperate patch after rc 1 as i mentioned.","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"a4ebf9aabf7ed11b1d02b50e78925799f7d9f711","unresolved":true,"context_lines":[{"line_number":728,"context_line":"        mtu \u003d network.get_meta(\u0027mtu\u0027) if network else None"},{"line_number":729,"context_line":"        nova.privsep.linux_net.set_device_mtu(dev, mtu)"},{"line_number":730,"context_line":""},{"line_number":731,"context_line":"    def _plug_os_vif(self, instance, vif):"},{"line_number":732,"context_line":"        instance_info \u003d os_vif_util.nova_to_osvif_instance(instance)"},{"line_number":733,"context_line":""},{"line_number":734,"context_line":"        # Set multiqueue on the port profile if create_tap is enabled and"}],"source_content_type":"text/x-python","patch_set":4,"id":"d7f930ef_8acb210d","line":731,"updated":"2026-02-03 10:46:42.000000000","message":"Do we need to do anything special during unplug? Or will os-vif will remove the TAP automatically?","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"6f2145209fa761062a56f2735587fd244c4face2","unresolved":false,"context_lines":[{"line_number":728,"context_line":"        mtu \u003d network.get_meta(\u0027mtu\u0027) if network else None"},{"line_number":729,"context_line":"        nova.privsep.linux_net.set_device_mtu(dev, mtu)"},{"line_number":730,"context_line":""},{"line_number":731,"context_line":"    def _plug_os_vif(self, instance, vif):"},{"line_number":732,"context_line":"        instance_info \u003d os_vif_util.nova_to_osvif_instance(instance)"},{"line_number":733,"context_line":""},{"line_number":734,"context_line":"        # Set multiqueue on the port profile if create_tap is enabled and"}],"source_content_type":"text/x-python","patch_set":4,"id":"70da0e5e_ebbf72ce","line":731,"in_reply_to":"35b19ed6_37ab3a2d","updated":"2026-02-03 13:30:18.000000000","message":"Cool. Thanks for the pointer.","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"83074cbe26f3c0fad5733d7c4aa51f1f16632e86","unresolved":true,"context_lines":[{"line_number":728,"context_line":"        mtu \u003d network.get_meta(\u0027mtu\u0027) if network else None"},{"line_number":729,"context_line":"        nova.privsep.linux_net.set_device_mtu(dev, mtu)"},{"line_number":730,"context_line":""},{"line_number":731,"context_line":"    def _plug_os_vif(self, instance, vif):"},{"line_number":732,"context_line":"        instance_info \u003d os_vif_util.nova_to_osvif_instance(instance)"},{"line_number":733,"context_line":""},{"line_number":734,"context_line":"        # Set multiqueue on the port profile if create_tap is enabled and"}],"source_content_type":"text/x-python","patch_set":4,"id":"35b19ed6_37ab3a2d","line":731,"in_reply_to":"d7f930ef_8acb210d","updated":"2026-02-03 11:31:28.000000000","message":"os-vif will remove the tap yes.\n\nhttps://github.com/openstack/os-vif/commit/eba8007607381736b23e0a0ac672981e726fd8ee#diff-fa6e668a84d0597973ffd55c9460b27ddd19d1b2b433086499ed78950f21defeR482\n\nso there is nothing else for nova to do.","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"caa7aaeb4a58c4f0d1291ae37cb3f69a5d982a8a","unresolved":true,"context_lines":[{"line_number":737,"context_line":"        # access to the instance."},{"line_number":738,"context_line":"        # NOTE: \u0027field in obj.fields\u0027 checks schema existence,"},{"line_number":739,"context_line":"        # \u0027field in obj\u0027 checks if the attribute is set on the instance"},{"line_number":740,"context_line":"        if (\u0027port_profile\u0027 in vif.fields and"},{"line_number":741,"context_line":"                \u0027port_profile\u0027 in vif):"},{"line_number":742,"context_line":"            profile \u003d vif.port_profile"},{"line_number":743,"context_line":"            if (profile is not None and"},{"line_number":744,"context_line":"                    \u0027create_tap\u0027 in profile.fields and"}],"source_content_type":"text/x-python","patch_set":4,"id":"84f47ec3_fe9c0e7d","line":741,"range":{"start_line":740,"start_character":0,"end_line":741,"end_character":39},"updated":"2026-01-29 16:42:20.000000000","message":"nit:\n\n```suggestion\n        if \u0027port_profile\u0027 in vif.fields and \u0027port_profile\u0027 in vif:\n```","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3e0cf47a68df7ca8937d09e0b52c3c585bdabd07","unresolved":false,"context_lines":[{"line_number":737,"context_line":"        # access to the instance."},{"line_number":738,"context_line":"        # NOTE: \u0027field in obj.fields\u0027 checks schema existence,"},{"line_number":739,"context_line":"        # \u0027field in obj\u0027 checks if the attribute is set on the instance"},{"line_number":740,"context_line":"        if (\u0027port_profile\u0027 in vif.fields and"},{"line_number":741,"context_line":"                \u0027port_profile\u0027 in vif):"},{"line_number":742,"context_line":"            profile \u003d vif.port_profile"},{"line_number":743,"context_line":"            if (profile is not None and"},{"line_number":744,"context_line":"                    \u0027create_tap\u0027 in profile.fields and"}],"source_content_type":"text/x-python","patch_set":4,"id":"aa0aef90_ea3ea740","line":741,"range":{"start_line":740,"start_character":0,"end_line":741,"end_character":39},"in_reply_to":"271db8d8_be2611d9","updated":"2026-02-06 11:36:00.000000000","message":"i fixed this in the ci patch that folows","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"1585e2d680d01dc036cc4fc3b22b55b476db05a2","unresolved":true,"context_lines":[{"line_number":737,"context_line":"        # access to the instance."},{"line_number":738,"context_line":"        # NOTE: \u0027field in obj.fields\u0027 checks schema existence,"},{"line_number":739,"context_line":"        # \u0027field in obj\u0027 checks if the attribute is set on the instance"},{"line_number":740,"context_line":"        if (\u0027port_profile\u0027 in vif.fields and"},{"line_number":741,"context_line":"                \u0027port_profile\u0027 in vif):"},{"line_number":742,"context_line":"            profile \u003d vif.port_profile"},{"line_number":743,"context_line":"            if (profile is not None and"},{"line_number":744,"context_line":"                    \u0027create_tap\u0027 in profile.fields and"}],"source_content_type":"text/x-python","patch_set":4,"id":"271db8d8_be2611d9","line":741,"range":{"start_line":740,"start_character":0,"end_line":741,"end_character":39},"in_reply_to":"84f47ec3_fe9c0e7d","updated":"2026-02-05 22:21:47.000000000","message":"+1","commit_id":"26068909e2123891eb37d8c6c8d80f3ed602fa23"}],"releasenotes/notes/support-osvif-tap-creation-2069718-abc123.yaml":[{"author":{"_account_id":13861,"name":"yatin","email":"ykarel@redhat.com","username":"yatinkarel"},"change_message_id":"66fc6dd8a7364ad64175f18910e22ffff5786f72","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Updated nova to support os-vif TAP device pre-creation for OVS/OVN ports."},{"line_number":5,"context_line":"    When Neutron sets ``ovs_create_tap`` in vif_details (enabled via"},{"line_number":6,"context_line":"    the ``[ovs]/ovs_create_tap`` config option in the ML2/OVS or ML2/OVN"},{"line_number":7,"context_line":"    mechanism driver), Nova propagates this to os-vif which creates the TAP"},{"line_number":8,"context_line":"    device before libvirt starts the VM. Nova then configures libvirt with"},{"line_number":9,"context_line":"    ``managed\u003d\"no\"`` so it uses the pre-created TAP device instead of creating"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"c9b39574_33e6a423","line":6,"updated":"2026-01-16 09:38:58.000000000","message":"for ml2/ovn it set in [ovn]/ovs_create_tap https://review.opendev.org/c/openstack/neutron/+/972039/4/neutron/conf/plugins/ml2/drivers/ovn/ovn_conf.py","commit_id":"7de3bfc6a10f90e06b86ff9529ceb5c41ab8f8e8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"e2387af1205f479da52c1f0a23d134d038c311d7","unresolved":false,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Updated nova to support os-vif TAP device pre-creation for OVS/OVN ports."},{"line_number":5,"context_line":"    When Neutron sets ``ovs_create_tap`` in vif_details (enabled via"},{"line_number":6,"context_line":"    the ``[ovs]/ovs_create_tap`` config option in the ML2/OVS or ML2/OVN"},{"line_number":7,"context_line":"    mechanism driver), Nova propagates this to os-vif which creates the TAP"},{"line_number":8,"context_line":"    device before libvirt starts the VM. Nova then configures libvirt with"},{"line_number":9,"context_line":"    ``managed\u003d\"no\"`` so it uses the pre-created TAP device instead of creating"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"e70804a2_f6ed86c2","line":6,"in_reply_to":"91171ba6_07a9a779","updated":"2026-01-16 18:37:58.000000000","message":"Done","commit_id":"7de3bfc6a10f90e06b86ff9529ceb5c41ab8f8e8"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"c73f0db9a165510412840afe6dec1cafba99c2e1","unresolved":true,"context_lines":[{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    Updated nova to support os-vif TAP device pre-creation for OVS/OVN ports."},{"line_number":5,"context_line":"    When Neutron sets ``ovs_create_tap`` in vif_details (enabled via"},{"line_number":6,"context_line":"    the ``[ovs]/ovs_create_tap`` config option in the ML2/OVS or ML2/OVN"},{"line_number":7,"context_line":"    mechanism driver), Nova propagates this to os-vif which creates the TAP"},{"line_number":8,"context_line":"    device before libvirt starts the VM. Nova then configures libvirt with"},{"line_number":9,"context_line":"    ``managed\u003d\"no\"`` so it uses the pre-created TAP device instead of creating"}],"source_content_type":"text/x-yaml","patch_set":3,"id":"91171ba6_07a9a779","line":6,"in_reply_to":"c9b39574_33e6a423","updated":"2026-01-16 10:59:46.000000000","message":"an yep. ill fix that. also we are only using this for ml2/ovn today so ill remove the refnece to ml2/ovs  it really mroe adding supprot for vif_type\u003dovs rather then any specific driver but ill calrify this","commit_id":"7de3bfc6a10f90e06b86ff9529ceb5c41ab8f8e8"}]}
