ML2 mechanism driver DVR PortContext info incomplete/inconsistent
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Fix Released
|
High
|
Robert Kukura |
Bug Description
While extending the existing ML2 port binding unit tests to cover DVR distributed port binding (bug 1453943), I ran into a number of issues where the PortContext passed to ML2 mechanism drivers does not provide the information needed for distributed ports or provides it inconsistently. This is likely to prevent existing mechanism drivers for ToR switches from working with DVR ports, and tests have reportedly shown this to be the case.
When DVR was introduced, the host, original_host, status, and original_status attributes were added to PortContext to provide drivers with the host-specific details of distributed (or normal) ports. But the current and previous port dictionary attributes also contain some host-specific information, such as the VIF type, for distributed ports. New attributes need to be added for host-specific current and previous VIF type and details, and the current and previous port dictionaries should contain only the host-independent information that is returned from REST operations.
Also, the existing original_status and original_host PortContext attributes should return None when in the context of create or delete operations, and original_host should reflect the host for which a distributed port operation is being performed.
Changed in neutron: | |
status: | Fix Committed → Fix Released |
Changed in neutron: | |
milestone: | liberty-1 → 7.0.0 |
Fix proposed to branch: master /review. openstack. org/182134
Review: https:/