)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"c8daa1cf2053cae2d7bba0692dbc6e7a4039fb87","unresolved":false,"context_lines":[{"line_number":14,"context_line":"ApiImpact"},{"line_number":15,"context_line":"DocImpact"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Closes-Bug: #150093"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: If1ab969c2002c649a3d51635ca2765c262e2d37f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba8a016a_2e46b94f","line":17,"updated":"2015-11-23 13:55:29.000000000","message":"Link to bug does not work","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"0636c65633756787fb606acddbbde4fb6dfae969","unresolved":false,"context_lines":[{"line_number":14,"context_line":"ApiImpact"},{"line_number":15,"context_line":"DocImpact"},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Closes-Bug: #150093"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Change-Id: If1ab969c2002c649a3d51635ca2765c262e2d37f"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"ba8a016a_a177173a","line":17,"in_reply_to":"ba8a016a_2e46b94f","updated":"2015-11-23 14:54:37.000000000","message":"fixed.","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"49fe09da7f2ad98307929ecd4b7ab8e1c469dd7c","unresolved":false,"context_lines":[{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ApiImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":8,"id":"9a8ffd7b_5fc5e98b","line":13,"updated":"2015-11-25 14:59:52.000000000","message":"Can you please add the reno release note too","commit_id":"bf5a4d02a72f4d4c4337c36063a86dc87a835bd5"},{"author":{"_account_id":14605,"name":"vikram.choudhary","email":"vikschw@gmail.com","username":"vikram.choudhary"},"change_message_id":"b72769414be4983c9883cfe77c72a9eaacc352c3","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This change adds a new VNIC type to distinguish between virtual and"},{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ApiImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a8ffd7b_5a00f301","line":12,"updated":"2015-11-30 10:48:14.000000000","message":"Should be \u0027APIImpact\u0027. For details refer to \"https://wiki.openstack.org/wiki/API_Working_Group\"","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"e7861328a377a309b68f5b13526789157c751d93","unresolved":false,"context_lines":[{"line_number":9,"context_line":"This change adds a new VNIC type to distinguish between virtual and"},{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ApiImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a8ffd7b_f368edf6","line":12,"in_reply_to":"9a8ffd7b_5a00f301","updated":"2015-11-30 13:41:27.000000000","message":"Done","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":1653,"name":"garyk","email":"gkotton@vmware.com","username":"garyk"},"change_message_id":"afb5110c43958b6f9ec214a83c93f46b940da8c5","unresolved":false,"context_lines":[{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ApiImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a8ffd7b_28a7f1bd","line":13,"updated":"2015-11-30 08:29:56.000000000","message":"I think that you misunderstood what i meant with the reno. Please see https://github.com/openstack/neutron/tree/master/releasenotes/notes","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"e7861328a377a309b68f5b13526789157c751d93","unresolved":false,"context_lines":[{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"ApiImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"9a8ffd7b_131fb1b7","line":13,"in_reply_to":"9a8ffd7b_28a7f1bd","updated":"2015-11-30 13:41:27.000000000","message":"Ugh! Yeah, thanks for pointing that out.","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":748,"name":"Armando Migliaccio","email":"armamig@gmail.com","username":"armando-migliaccio"},"change_message_id":"e116c9fb7207dedf83a4d88bfb28028f65fe1fe3","unresolved":false,"context_lines":[{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"APIImpact"},{"line_number":13,"context_line":"DocImpact"},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Closes-Bug: #1500993"},{"line_number":16,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"7a740942_e8e776aa","line":13,"updated":"2015-12-04 01:14:58.000000000","message":"Please follow guidelines as detailed here:\n\nhttp://lists.openstack.org/pipermail/openstack-dev/2015-November/080294.html\n\n\"you will need to add a description whenever you add a DocImpact flag in your commit message.\"","commit_id":"2d3aa565df5cb7eab75e2db26c2e862c10837e40"},{"author":{"_account_id":3217,"name":"Ian Wells","username":"ijw-ubuntu"},"change_message_id":"a3f407d92d02b528b499470da3b162b17dabf9ad","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Adding a VNIC type for physical functions"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new VNIC type to distinguish between virtual and"},{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"APIImpact"},{"line_number":13,"context_line":"DocImpact: Add description for new \u0027direct-physical\u0027 VNIC type."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"7a740942_426aa9b4","line":10,"updated":"2015-12-11 19:10:00.000000000","message":"It does, but it also adds a change to the SRIOV driver that is a complete no-op on top of that.  You need to comment on that and why you did it (and you also need to explain where it\u0027s going since it\u0027s clearly a placeholder for more changes).","commit_id":"7b47c2a7a6cd78e0adffc0bea391bf68a1921102"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"0f135b72b5cb8d280e73b1cfdd05c1b8876e3e6b","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Adding a VNIC type for physical functions"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"This change adds a new VNIC type to distinguish between virtual and"},{"line_number":10,"context_line":"physical functions in SR-IOV."},{"line_number":11,"context_line":""},{"line_number":12,"context_line":"APIImpact"},{"line_number":13,"context_line":"DocImpact: Add description for new \u0027direct-physical\u0027 VNIC type."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":11,"id":"7a740942_ba6a587f","line":10,"in_reply_to":"7a740942_426aa9b4","updated":"2015-12-14 13:32:36.000000000","message":"I\u0027ll add a comment describing the behavior of the particular VNIC type. fwiw this isn\u0027t *exactly* new behavior - but effectively re-introduces a code path when we had agentless sr-iov (which was deprecated in liberty with introduction of QoS functionality, etc. that required the agent).","commit_id":"7b47c2a7a6cd78e0adffc0bea391bf68a1921102"}],"neutron/extensions/portbindings.py":[{"author":{"_account_id":8788,"name":"Miguel Angel Ajo","email":"mangelajo@redhat.com","username":"mangelajo"},"change_message_id":"ca185c1a5a47454a56129e7f094b6a21775360d2","unresolved":false,"context_lines":[{"line_number":80,"context_line":"VNIC_DIRECT \u003d \u0027direct\u0027"},{"line_number":81,"context_line":"VNIC_MACVTAP \u003d \u0027macvtap\u0027"},{"line_number":82,"context_line":"VNIC_BAREMETAL \u003d \u0027baremetal\u0027"},{"line_number":83,"context_line":"VNIC_DIRECT_PHYSICAL \u003d \u0027physical\u0027"},{"line_number":84,"context_line":"VNIC_TYPES \u003d [VNIC_NORMAL, VNIC_DIRECT, VNIC_MACVTAP, VNIC_BAREMETAL,"},{"line_number":85,"context_line":"              VNIC_DIRECT_PHYSICAL]"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba8a016a_2eb47933","line":83,"updated":"2015-11-23 13:49:28.000000000","message":"note, this is the only constant differing with the string, I Wonder if it does make any sense to make it \u0027direct-physical\u0027 or something like that.","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"0636c65633756787fb606acddbbde4fb6dfae969","unresolved":false,"context_lines":[{"line_number":80,"context_line":"VNIC_DIRECT \u003d \u0027direct\u0027"},{"line_number":81,"context_line":"VNIC_MACVTAP \u003d \u0027macvtap\u0027"},{"line_number":82,"context_line":"VNIC_BAREMETAL \u003d \u0027baremetal\u0027"},{"line_number":83,"context_line":"VNIC_DIRECT_PHYSICAL \u003d \u0027physical\u0027"},{"line_number":84,"context_line":"VNIC_TYPES \u003d [VNIC_NORMAL, VNIC_DIRECT, VNIC_MACVTAP, VNIC_BAREMETAL,"},{"line_number":85,"context_line":"              VNIC_DIRECT_PHYSICAL]"},{"line_number":86,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"ba8a016a_411aeb18","line":83,"in_reply_to":"ba8a016a_2eb47933","updated":"2015-11-23 14:54:37.000000000","message":"agreed, done.","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"}],"neutron/plugins/ml2/drivers/mech_sriov/agent/sriov_nic_agent.py":[{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"d45eac3231d919346ccbbe79a62b67040c4b2245","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_023a18e7","line":65,"updated":"2015-11-29 14:31:40.000000000","message":"I wonder if the deprecation of agent_required option should not be revised?\nFor deployments with physical_direct only agents add unneeded burden.","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"8e2495943a70e5760f7d4a2f2f7b4e328aff11c5","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_ad70dd40","line":65,"in_reply_to":"9a8ffd7b_023a18e7","updated":"2015-11-29 15:32:41.000000000","message":"I don\u0027t think so, because you may want to work with all the direct and macvtap features and still use physical_direct  in the same setup. \n\nalso we can add support to admin up/down \nto PF  so there is going to be follow patches in this cycle and or in future cycles (I talked to Brent on this)","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"e7861328a377a309b68f5b13526789157c751d93","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_12924af7","line":65,"in_reply_to":"9a8ffd7b_05ec5828","updated":"2015-11-30 13:41:27.000000000","message":"@moshe: After going over the scope of the agent it\u0027s not clear yet how the agent will interact with the PF, if at all.  The agent will eventually have to be aware of some of the consequences of the related PF related functionality indicated in the related nova specs, if only to react to changes in the underlying system.","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"ce272b684125df0e9d8e4e78b49f1977810df60d","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_714e3d3c","line":65,"in_reply_to":"9a8ffd7b_05ec5828","updated":"2015-11-30 11:05:03.000000000","message":"@moshe: this is my understanding as well. Once PF is allocated to the guest, it cannot be managed via the Host. So either VM will have some way to get the status request propagated, or there is no way to manage the pf link state in the Host.","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"65901b582449c0b5715a10e0b3460f27a2b0ca4a","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_e19d890a","line":65,"in_reply_to":"9a8ffd7b_ad70dd40","updated":"2015-11-30 07:31:41.000000000","message":"@moshe: Can you please share how  the admin state of the allocated physical function is going to be managed?","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"61c0553cceccb3775e1f30dfa16d61df93b4ec18","unresolved":false,"context_lines":[{"line_number":62,"context_line":"        LOG.debug(\"port_update received\")"},{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"}],"source_content_type":"text/x-python","patch_set":9,"id":"9a8ffd7b_05ec5828","line":65,"in_reply_to":"9a8ffd7b_e19d890a","updated":"2015-11-30 07:51:55.000000000","message":"now that I think about it it maybe not be possible as the PF will be belong to the guest, (I am not sure if the agent is useful with PF at all)\nmaybe we should create new mechanism driver for it ?\n@Brent, are you planning to use the agent?","commit_id":"a061a14dcd999386676592d08b3cded76fca8315"},{"author":{"_account_id":7787,"name":"Kevin Benton","email":"kevin@benton.pub","username":"blak111"},"change_message_id":"ee7f7c1511e0dfd0892733740b5d98ddeb0ec9eb","unresolved":false,"context_lines":[{"line_number":63,"context_line":"        port \u003d kwargs.get(\u0027port\u0027)"},{"line_number":64,"context_line":""},{"line_number":65,"context_line":"        vnic_type \u003d port.get(portbindings.VNIC_TYPE)"},{"line_number":66,"context_line":"        if vnic_type and vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":67,"context_line":"            LOG.debug(\"The SR-IOV agent doesn\u0027t handle %s ports.\","},{"line_number":68,"context_line":"                      portbindings.VNIC_DIRECT_PHYSICAL)"},{"line_number":69,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":12,"id":"5a710552_22cecfb4","line":66,"updated":"2015-12-15 20:03:13.000000000","message":"if vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:","commit_id":"2c60278992d5a217241054444ed0ca6e1d2f3e5c"}],"neutron/plugins/ml2/drivers/mech_sriov/mech_driver/mech_driver.py":[{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"c8daa1cf2053cae2d7bba0692dbc6e7a4039fb87","unresolved":false,"context_lines":[{"line_number":104,"context_line":"            LOG.debug(\"Refusing to bind due to unsupported pci_vendor device\")"},{"line_number":105,"context_line":"            return"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        if vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":108,"context_line":"            # Physical VNICs are currently similar to VFs but are not"},{"line_number":109,"context_line":"            # managed by the SR-IOV agent."},{"line_number":110,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba8a016a_8e0ec5e3","line":107,"updated":"2015-11-23 13:55:29.000000000","message":"In case someone assigns physical function to VM, there won\u0027t be possible to manage its virtual functions. I do not understand this change. You added VNIC_DIRECT_PHYSICAL to the list of supported vnic types, but you reject its binding. This is actually as you are not allowing to support this vnic type.","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"0636c65633756787fb606acddbbde4fb6dfae969","unresolved":false,"context_lines":[{"line_number":104,"context_line":"            LOG.debug(\"Refusing to bind due to unsupported pci_vendor device\")"},{"line_number":105,"context_line":"            return"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"        if vnic_type \u003d\u003d portbindings.VNIC_DIRECT_PHYSICAL:"},{"line_number":108,"context_line":"            # Physical VNICs are currently similar to VFs but are not"},{"line_number":109,"context_line":"            # managed by the SR-IOV agent."},{"line_number":110,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":4,"id":"ba8a016a_21a487b7","line":107,"in_reply_to":"ba8a016a_8e0ec5e3","updated":"2015-11-23 14:54:37.000000000","message":"right, fixing.","commit_id":"ad5401445e775a257041e2578957a1b6bfae69be"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"1e93ab203a6e3c4949318d45e86d897fed051f01","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    \"\"\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    supported_qos_rule_types \u003d [qos_consts.RULE_TYPE_BANDWIDTH_LIMIT]"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def __init__(self,"},{"line_number":62,"context_line":"                 agent_type\u003dconstants.AGENT_TYPE_NIC_SWITCH,"},{"line_number":63,"context_line":"                 vif_type\u003dVIF_TYPE_HW_VEB,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_31abac8b","line":60,"updated":"2015-11-24 20:08:36.000000000","message":"what about Qos support to this port type?","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"ff2c64e761639fed24b8aeff3c0a1dbd88b4d080","unresolved":false,"context_lines":[{"line_number":57,"context_line":"    \"\"\""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    supported_qos_rule_types \u003d [qos_consts.RULE_TYPE_BANDWIDTH_LIMIT]"},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"    def __init__(self,"},{"line_number":62,"context_line":"                 agent_type\u003dconstants.AGENT_TYPE_NIC_SWITCH,"},{"line_number":63,"context_line":"                 vif_type\u003dVIF_TYPE_HW_VEB,"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_2587e6b6","line":60,"in_reply_to":"9a8ffd7b_31abac8b","updated":"2015-11-24 22:53:54.000000000","message":"AFAICT, QoS cannot be configured for PFs. I\u0027ll address in a separate patch set.","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"1e93ab203a6e3c4949318d45e86d897fed051f01","unresolved":false,"context_lines":[{"line_number":64,"context_line":"                 vif_details\u003d{portbindings.CAP_PORT_FILTER: False},"},{"line_number":65,"context_line":"                 supported_vnic_types\u003d[portbindings.VNIC_DIRECT,"},{"line_number":66,"context_line":"                                       portbindings.VNIC_MACVTAP,"},{"line_number":67,"context_line":"                                       portbindings.VNIC_DIRECT_PHYSICAL],"},{"line_number":68,"context_line":"                 supported_pci_vendor_info\u003dNone):"},{"line_number":69,"context_line":"        \"\"\"Initialize base class for SriovNicSwitch L2 agent type."},{"line_number":70,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_f1952440","line":67,"updated":"2015-11-24 20:08:36.000000000","message":"so I missing the agent part \ndo you want to handle admin_up/admin_down? you need to add \ncode to agent to handle it \nthis part will be problem as the agent assume MACVTAP and DIRECT which are both VF \nhttps://github.com/openstack/neutron/blob/master/neutron/plugins/ml2/drivers/mech_sriov/agent/sriov_nic_agent.py#L69-L80","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"ff2c64e761639fed24b8aeff3c0a1dbd88b4d080","unresolved":false,"context_lines":[{"line_number":64,"context_line":"                 vif_details\u003d{portbindings.CAP_PORT_FILTER: False},"},{"line_number":65,"context_line":"                 supported_vnic_types\u003d[portbindings.VNIC_DIRECT,"},{"line_number":66,"context_line":"                                       portbindings.VNIC_MACVTAP,"},{"line_number":67,"context_line":"                                       portbindings.VNIC_DIRECT_PHYSICAL],"},{"line_number":68,"context_line":"                 supported_pci_vendor_info\u003dNone):"},{"line_number":69,"context_line":"        \"\"\"Initialize base class for SriovNicSwitch L2 agent type."},{"line_number":70,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_9fa05ff6","line":67,"in_reply_to":"9a8ffd7b_f1952440","updated":"2015-11-24 22:53:54.000000000","message":"Yeah, you are correct. I\u0027ll need to side-step the code for the this VNIC type in the agent. I\u0027ll address in a follow-up patch dependent on this one.","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"1e93ab203a6e3c4949318d45e86d897fed051f01","unresolved":false,"context_lines":[{"line_number":65,"context_line":"                 supported_vnic_types\u003d[portbindings.VNIC_DIRECT,"},{"line_number":66,"context_line":"                                       portbindings.VNIC_MACVTAP,"},{"line_number":67,"context_line":"                                       portbindings.VNIC_DIRECT_PHYSICAL],"},{"line_number":68,"context_line":"                 supported_pci_vendor_info\u003dNone):"},{"line_number":69,"context_line":"        \"\"\"Initialize base class for SriovNicSwitch L2 agent type."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :param agent_type: Constant identifying agent type in agents_db"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_d146e0be","line":68,"updated":"2015-11-24 20:08:36.000000000","message":"supported_pci_vendor_info is to validate vf vendor:product id \nyou will need another config option for pf  vendor:product id \nsee \nhttps://github.com/openstack/neutron/blob/master/etc/neutron/plugins/ml2/ml2_conf_sriov.ini#L7-L8\n\nin mellanox this is the VF 15b3:1004 and this is the PF 15b3:1003","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"ee016436ca322aa019af85d1ae16ba3d2e476f37","unresolved":false,"context_lines":[{"line_number":65,"context_line":"                 supported_vnic_types\u003d[portbindings.VNIC_DIRECT,"},{"line_number":66,"context_line":"                                       portbindings.VNIC_MACVTAP,"},{"line_number":67,"context_line":"                                       portbindings.VNIC_DIRECT_PHYSICAL],"},{"line_number":68,"context_line":"                 supported_pci_vendor_info\u003dNone):"},{"line_number":69,"context_line":"        \"\"\"Initialize base class for SriovNicSwitch L2 agent type."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :param agent_type: Constant identifying agent type in agents_db"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_6ad85654","line":68,"in_reply_to":"9a8ffd7b_b406aa1e","updated":"2015-11-24 23:21:13.000000000","message":"the problem will be that the validation should be per vnic_type\ndirect, macvtap shold be checked against VF vendor_info \nand you type against the PF vendor_info. this is just make sure that nova send the correct PCI cap to neutron. \nso you don\u0027t want to get PF or regular PCI when you need VF pci \nand you don\u0027t want VF when you need PF :)","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"ff2c64e761639fed24b8aeff3c0a1dbd88b4d080","unresolved":false,"context_lines":[{"line_number":65,"context_line":"                 supported_vnic_types\u003d[portbindings.VNIC_DIRECT,"},{"line_number":66,"context_line":"                                       portbindings.VNIC_MACVTAP,"},{"line_number":67,"context_line":"                                       portbindings.VNIC_DIRECT_PHYSICAL],"},{"line_number":68,"context_line":"                 supported_pci_vendor_info\u003dNone):"},{"line_number":69,"context_line":"        \"\"\"Initialize base class for SriovNicSwitch L2 agent type."},{"line_number":70,"context_line":""},{"line_number":71,"context_line":"        :param agent_type: Constant identifying agent type in agents_db"}],"source_content_type":"text/x-python","patch_set":6,"id":"9a8ffd7b_b406aa1e","line":68,"in_reply_to":"9a8ffd7b_d146e0be","updated":"2015-11-24 22:53:54.000000000","message":"What would break if you used the same configuration for both PFs and VFs? I\u0027m of two minds to separate configuration: on one hand it allows us to selectively enable support PF support for PCI vendors on the other hand it makes configuration pretty ugly (we should probably clarify our configuration documentation for the VF case as well). In any case, I\u0027ll add a patch for this at the end of the dependency chain so it can be dealt with independently.","commit_id":"3cd2838e503b4cc4b65cdfd2b0f02fd7e849a8ec"},{"author":{"_account_id":5511,"name":"Nikola Dipanov","email":"ndipanov@redhat.com","username":"ndipanov"},"change_message_id":"88a2008572fe0a09407f81d9741b7e7db11c509e","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        for segment in context.segments_to_bind:"},{"line_number":129,"context_line":"            if self.check_segment(segment, agent):"},{"line_number":130,"context_line":"                port_status \u003d (constants.PORT_STATUS_ACTIVE if agent is None"},{"line_number":131,"context_line":"                               else constants.PORT_STATUS_DOWN)"},{"line_number":132,"context_line":"                context.set_binding(segment[api.ID],"},{"line_number":133,"context_line":"                                    self.vif_type,"},{"line_number":134,"context_line":"                                    self._get_vif_details(segment),"}],"source_content_type":"text/x-python","patch_set":11,"id":"7a740942_7478602c","line":131,"range":{"start_line":131,"start_character":36,"end_line":131,"end_character":63},"updated":"2015-12-10 19:07:22.000000000","message":"this seems to change the behaviour as normally port status will be set to None and not PORT_STATUS_DOWN.\n\nDon\u0027t know enough to tell if it\u0027s ok though.","commit_id":"7b47c2a7a6cd78e0adffc0bea391bf68a1921102"},{"author":{"_account_id":6681,"name":"Brent Eagles","email":"beagles@redhat.com","username":"beagles"},"change_message_id":"0f135b72b5cb8d280e73b1cfdd05c1b8876e3e6b","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        for segment in context.segments_to_bind:"},{"line_number":129,"context_line":"            if self.check_segment(segment, agent):"},{"line_number":130,"context_line":"                port_status \u003d (constants.PORT_STATUS_ACTIVE if agent is None"},{"line_number":131,"context_line":"                               else constants.PORT_STATUS_DOWN)"},{"line_number":132,"context_line":"                context.set_binding(segment[api.ID],"},{"line_number":133,"context_line":"                                    self.vif_type,"},{"line_number":134,"context_line":"                                    self._get_vif_details(segment),"}],"source_content_type":"text/x-python","patch_set":11,"id":"7a740942_fa6f8028","line":131,"in_reply_to":"7a740942_6d90dced","updated":"2015-12-14 13:32:36.000000000","message":"Right. It maintains the semantics of the previous code for non direct-physical vNICs - but reintroduces the semantics from our previously supported agentless vNICs where management of the resource was entirely left to the OS and the guest. Since neutron isn\u0027t *really* managing it the best we can do is describe it as active.","commit_id":"7b47c2a7a6cd78e0adffc0bea391bf68a1921102"},{"author":{"_account_id":6598,"name":"Berezovsky Irena","email":"irenab.dev@gmail.com","username":"irenab"},"change_message_id":"d19b78d117ca942c05ce58f562a4692f997897ee","unresolved":false,"context_lines":[{"line_number":128,"context_line":"        for segment in context.segments_to_bind:"},{"line_number":129,"context_line":"            if self.check_segment(segment, agent):"},{"line_number":130,"context_line":"                port_status \u003d (constants.PORT_STATUS_ACTIVE if agent is None"},{"line_number":131,"context_line":"                               else constants.PORT_STATUS_DOWN)"},{"line_number":132,"context_line":"                context.set_binding(segment[api.ID],"},{"line_number":133,"context_line":"                                    self.vif_type,"},{"line_number":134,"context_line":"                                    self._get_vif_details(segment),"}],"source_content_type":"text/x-python","patch_set":11,"id":"7a740942_6d90dced","line":131,"in_reply_to":"7a740942_7478602c","updated":"2015-12-13 09:01:54.000000000","message":"I think this change is Ok, since for deployment with agent handling the port, agent will update the port status as soon as finishes configration","commit_id":"7b47c2a7a6cd78e0adffc0bea391bf68a1921102"}]}
