)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"2ba23122ea75ff816b0cdec87caf64cb70ac6973","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d4904284_c540dbba","updated":"2022-10-21 12:24:06.000000000","message":"I promised to push this to follow up on the discussion who can use binding:profile and what part of that we have documented.\n\nI\u0027ll be AFK from 2022-10-24 to 2022-11-01, but all your input is welcome and I\u0027ll be addressing your comments when I\u0027m back.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"74db35da9a9e7def8c1af97e50825912d9a35463","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"f70cce2a_dad8cee9","updated":"2022-11-02 18:01:17.000000000","message":"ironic uses this ","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"4d4d98c69dba570c957c97b774a6905a0d678e42","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"ee0e1450_c25eef09","updated":"2022-11-02 10:05:09.000000000","message":"thanks, it is in sync with what we discussed on the drivers meeting ","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":8313,"name":"Lajos Katona","display_name":"lajoskatona","email":"katonalala@gmail.com","username":"elajkat","status":"Ericsson Software Technology"},"change_message_id":"002688f0597808a79207c676959e6139cb0e30ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"e177a3d7_082d5026","updated":"2022-11-04 07:43:20.000000000","message":"Thanks","commit_id":"6100385c769da489fb982b9bc4bd32bc78f87ff0"}],"api-ref/source/v2/parameters.yaml":[{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"2ba23122ea75ff816b0cdec87caf64cb70ac6973","unresolved":true,"context_lines":[{"line_number":2462,"context_line":"  type: object"},{"line_number":2463,"context_line":"binding:profile-request:"},{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"32dce2a3_839b655a","line":2465,"range":{"start_line":2465,"start_character":30,"end_line":2465,"end_character":74},"updated":"2022-10-21 12:24:06.000000000","message":"I guess the original meaning of this may have wanted to be \u0027nova\u0027 but I find that  hard to decode.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"74db35da9a9e7def8c1af97e50825912d9a35463","unresolved":true,"context_lines":[{"line_number":2462,"context_line":"  type: object"},{"line_number":2463,"context_line":"binding:profile-request:"},{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"783e701e_873f8114","line":2465,"range":{"start_line":2465,"start_character":30,"end_line":2465,"end_character":74},"in_reply_to":"32dce2a3_839b655a","updated":"2022-11-02 18:01:17.000000000","message":"we used this wording to encompass nova or ironic at the time.\n\ntoday the only entity that shoudl use this are nova, ironic or zun/kuryr.\n\nin all the usage should be mutually exclusive.\n\nany case where there are multiple writes of this including an admin or enduser is our of contract today. i.e. its a latent bug.\n\nironic uses it to store info here\nhttps://github.com/openstack/ironic/blob/fc4702439aaf074db6c8ce98b646f89e1ec22203/ironic/common/neutron.py#L313-L316\n\nwhich is used for port bining and possibly the hieracaly port binding drivers\n\nzun sets it here\nhttps://github.com/openstack/zun/blob/917868f5fe02ff419fd35c5d9332f45a064ed385/zun/network/neutron.py#L206-L227\n\nthe port binding profile content is basically owned by the service that calls neutron to bind the port. there should only ever be one service that does that for any given port.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"599241c95d0149e8b107efeaf5d75d8c0d8bd1bd","unresolved":false,"context_lines":[{"line_number":2462,"context_line":"  type: object"},{"line_number":2463,"context_line":"binding:profile-request:"},{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"02335745_ed3d0eb4","line":2465,"range":{"start_line":2465,"start_character":30,"end_line":2465,"end_character":74},"in_reply_to":"783e701e_873f8114","updated":"2022-11-03 09:48:28.000000000","message":"Ack","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11975,"name":"Slawek Kaplonski","email":"skaplons@redhat.com","username":"slaweq"},"change_message_id":"faca96dc4033fa6b2a670c5b585962f8f2d7eafa","unresolved":true,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"9edae26f_84e509b4","line":2467,"range":{"start_line":2467,"start_character":63,"end_line":2467,"end_character":71},"updated":"2022-11-02 15:39:27.000000000","message":"I\u0027m not sure if it should be only for Nova. I agree that it should be for \"machine-machine\" communication but what if e.g. Ironic will want to use that field in some way? Will that be wrong? Why?","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"599241c95d0149e8b107efeaf5d75d8c0d8bd1bd","unresolved":false,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"38a8bc1f_21f8d147","line":2467,"range":{"start_line":2467,"start_character":63,"end_line":2467,"end_character":71},"in_reply_to":"94884117_5b29ca7b","updated":"2022-11-03 09:48:28.000000000","message":"Extended the wording to cover this","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"74db35da9a9e7def8c1af97e50825912d9a35463","unresolved":true,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"94884117_5b29ca7b","line":2467,"range":{"start_line":2467,"start_character":63,"end_line":2467,"end_character":71},"in_reply_to":"9edae26f_84e509b4","updated":"2022-11-02 18:01:17.000000000","message":"its nova zun or ironic but its mutally exclivie.\n\nthere is never a case wehre then content of this should be modifed by two service at any one time and it shoudl not be set by humans.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"2ba23122ea75ff816b0cdec87caf64cb70ac6973","unresolved":true,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."},{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"84559b51_f5b8f53f","line":2468,"range":{"start_line":2467,"start_character":4,"end_line":2468,"end_character":43},"updated":"2022-10-21 12:24:06.000000000","message":"I\u0027m still not sure what is the problem when somebody else beyond nova starts writing to this field. That all writers of the field need to be aware that there may be other writers and their keys-values should not be overwritten? The presence of counterexamples kind of demonstrates that this problem does not exist... On the other hand I see that with multiple writers we must read the value, add the key we want to the dict, then update the field - which is not atomic and this may lead to problems at least theoretically.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"74db35da9a9e7def8c1af97e50825912d9a35463","unresolved":true,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."},{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"adabfced_812a94b1","line":2468,"range":{"start_line":2467,"start_character":4,"end_line":2468,"end_character":43},"in_reply_to":"84559b51_f5b8f53f","updated":"2022-11-02 18:01:17.000000000","message":"we have code to prevent touch other keys which is tech debt.\nbut allowing humans to write data in this field is a security risk.\nnova does not have a way to validate that the data it wrote has not been changed.\n\nthat is why this filed is admin only and why its dangerous ot use custom policy to\nallow others to write to it.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"599241c95d0149e8b107efeaf5d75d8c0d8bd1bd","unresolved":false,"context_lines":[{"line_number":2464,"context_line":"  description: |"},{"line_number":2465,"context_line":"    A dictionary that enables the application running on the specific host to"},{"line_number":2466,"context_line":"    pass and receive vif port information specific to the networking back-end."},{"line_number":2467,"context_line":"    This field is only meant for machine-machine communication for Nova to"},{"line_number":2468,"context_line":"    pass information to a Neutron back-end. The existing counterexamples"},{"line_number":2469,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2470,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."},{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"40b2a85a_56fe7556","line":2468,"range":{"start_line":2467,"start_character":4,"end_line":2468,"end_character":43},"in_reply_to":"adabfced_812a94b1","updated":"2022-11-03 09:48:28.000000000","message":"Ack","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"2ba23122ea75ff816b0cdec87caf64cb70ac6973","unresolved":true,"context_lines":[{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."},{"line_number":2472,"context_line":"    The default is an empty dictionary."},{"line_number":2473,"context_line":"    If you update it with null then it is treated like {} in the response."},{"line_number":2474,"context_line":"    Since the port-mac-address-override extension the ``device_mac_address``"},{"line_number":2475,"context_line":"    field of the binding:profile can be used to provide the MAC address of the"},{"line_number":2476,"context_line":"    physical device a direct-physical port is being bound to. If provided, then"},{"line_number":2477,"context_line":"    the ``mac_address`` field of the port resource will be updated to the MAC"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"f69f28b0_c143e39d","line":2474,"range":{"start_line":2474,"start_character":56,"end_line":2474,"end_character":74},"updated":"2022-10-21 12:24:06.000000000","message":"I guess this is not a counterexample because it is coming from nova?\n\nhttps://bugs.launchpad.net/nova/+bug/1942329","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":15554,"name":"Bence Romsics","email":"bence.romsics@gmail.com","username":"ebenrom","status":"working for Ericsson, UTC+1 (+DST)"},"change_message_id":"599241c95d0149e8b107efeaf5d75d8c0d8bd1bd","unresolved":false,"context_lines":[{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."},{"line_number":2472,"context_line":"    The default is an empty dictionary."},{"line_number":2473,"context_line":"    If you update it with null then it is treated like {} in the response."},{"line_number":2474,"context_line":"    Since the port-mac-address-override extension the ``device_mac_address``"},{"line_number":2475,"context_line":"    field of the binding:profile can be used to provide the MAC address of the"},{"line_number":2476,"context_line":"    physical device a direct-physical port is being bound to. If provided, then"},{"line_number":2477,"context_line":"    the ``mac_address`` field of the port resource will be updated to the MAC"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a20630de_f29c27ab","line":2474,"range":{"start_line":2474,"start_character":56,"end_line":2474,"end_character":74},"in_reply_to":"cc8bd4e4_b05adfcc","updated":"2022-11-03 09:48:28.000000000","message":"Ack","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"74db35da9a9e7def8c1af97e50825912d9a35463","unresolved":true,"context_lines":[{"line_number":2471,"context_line":"    The networking API does not define a specific format of this field."},{"line_number":2472,"context_line":"    The default is an empty dictionary."},{"line_number":2473,"context_line":"    If you update it with null then it is treated like {} in the response."},{"line_number":2474,"context_line":"    Since the port-mac-address-override extension the ``device_mac_address``"},{"line_number":2475,"context_line":"    field of the binding:profile can be used to provide the MAC address of the"},{"line_number":2476,"context_line":"    physical device a direct-physical port is being bound to. If provided, then"},{"line_number":2477,"context_line":"    the ``mac_address`` field of the port resource will be updated to the MAC"}],"source_content_type":"text/x-yaml","patch_set":1,"id":"cc8bd4e4_b05adfcc","line":2474,"range":{"start_line":2474,"start_character":56,"end_line":2474,"end_character":74},"in_reply_to":"f69f28b0_c143e39d","updated":"2022-11-02 18:01:17.000000000","message":"correct this is used exlucitve by nova and if you cange it it would break things.\n\nsame as changing the pci_slot will break sriov.\n\nthe value is set by nova and must not be change by anything else.","commit_id":"f8494886c3cbe43249901fd0f92641dc7e8ecb16"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3b9077faa1f98cd35da3deb4698b1fe3428c6cf5","unresolved":true,"context_lines":[{"line_number":2469,"context_line":"    back-end. It should not be used by multiple services concurrently or by"},{"line_number":2470,"context_line":"    cloud end users. The existing counterexamples"},{"line_number":2471,"context_line":"    (``capabilities: [switchdev]`` for Open vSwitch hardware offload and"},{"line_number":2472,"context_line":"    ``trusted\u003dtrue`` for Trusted Virtual Functions) are due to be cleaned up."},{"line_number":2473,"context_line":"    The networking API does not define a specific format of this field."},{"line_number":2474,"context_line":"    The default is an empty dictionary."},{"line_number":2475,"context_line":"    If you update it with null then it is treated like {} in the response."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"48f615cc_b40b9980","line":2472,"updated":"2022-11-03 14:08:57.000000000","message":"+1 \n\nthe simple rule of tumb is what ever binds the port is the only thing that should set or modify the binding:profile\n\nso  Nova, Ironic or Zun","commit_id":"6100385c769da489fb982b9bc4bd32bc78f87ff0"}]}
