Reviewed: https://review.opendev.org/c/openstack/neutron/+/780055 Committed: https://opendev.org/openstack/neutron/commit/77ac42d2ee664263dd1dfd391dac4d8e062875e0 Submitter: "Zuul (22348)" Branch: master
commit 77ac42d2ee664263dd1dfd391dac4d8e062875e0 Author: Rodolfo Alonso Hernandez <[email protected]> Date: Tue Mar 9 17:46:47 2021 +0000 SR-IOV agent can handle ports with same MAC addresses SR-IOV agent can handle ports with same MAC address (located in different networks). The agent can retrieve, from the system, the MAC address and the PCI slot; because the PCI slot is unique per port in the same host, this parameter is used to match with the Neutron port ID stored in the database (published via RPC). RPC API bumped to version 1.9. Closes-Bug: #1791159 Change-Id: Id8c3e0485bebc55c778ecaadaabca1c28ec56205 ** Changed in: neutron Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to neutron. https://bugs.launchpad.net/bugs/1791159 Title: Enhance SR-IOV agent to handle duplicate MAC addresses Status in neutron: Fix Released Bug description: There are scenarios where a VNF wishes to to have the same MAC address in different VLANs or different provider_network types. Tested so far: 1. Same MAC address used between 2 different VLAN networks ----> Success 2. Same MAC address used between 2 different SR-IOV networks ----> Success 3. Same MAC address used between 2 different VXLAN networks ----> Success 4. Same MAC address used between SR-IOV and VXLAN networks a)created sriov port first then vxlan port -----> Success b)created vxlan port first then sriov port ----> this scenario sometimes works and sometimes fails. It seems to be dependent on order of values returned from ports table Examining the code, the SR-IOV agent requests device info by MAC address which calls into the function "get_port_from_device_mac" (https://github.com/openstack/neutron/blob/87223c10cbad33a3b75f22c20725ef9e01728b57/neutron/plugins/ml2/db.py#L146). This function just returns the last item in the list with the implicit assumption that the MAC address will always be unique and hence there's only one value. Enhancement is requested to allow SR-IOV agent to request device info by MAC address but filtered on host_id as it knows which host is making the request. There is still an edge case where this won't work if ports are on the same host - in which case an informative error should be returned. To manage notifications about this bug go to: https://bugs.launchpad.net/neutron/+bug/1791159/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

