L23Network module incompatible with OVS <= 1.10.0

Bug #1284801 reported by Vladimir Kuklin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Won't Fix
Medium
Vladimir Kuklin

Bug Description

Currently, we cannot use OVS <= 1.10.0 with patch ports as our peer argument is too long for OVS as it uses Linux kernel structures for patch ports and linux kernel name size cannot be more than 16 bytes. Thus, we need to implement some other naming techniques for patch ports in L23Network module.

Code:

vvk@vvk-workstation:~/git/openvswitch/lib ((v1.9.3))$ grep -A 3 -B3 peer netdev-vport.c
    if (strlen(peer) >= IFNAMSIZ) {
        VLOG_ERR("%s: patch 'peer' arg too long", name);
        return EINVAL;
    }

Revision history for this message
Vladimir Kuklin (vkuklin) wrote :

suggested solution under testing:

--- a/deployment/puppet/l23network/lib/puppet/provider/l2_ovs_patch/ovs.rb
+++ b/deployment/puppet/l23network/lib/puppet/provider/l2_ovs_patch/ovs.rb
@@ -1,3 +1,4 @@
+require 'zlib'
 Puppet::Type.type(:l2_ovs_patch).provide(:ovs) do
   optional_commands(
     :vsctl => "/usr/bin/ovs-vsctl",
@@ -12,9 +13,10 @@ Puppet::Type.type(:l2_ovs_patch).provide(:ovs) do
     i = 0
     for peer in @resource[:peers]
       if peer == nil
- rv.insert(-1, "#{@resource[:bridges][i]}--#{@resource[:bridges][i-1]}")
+ patch_name = Zlib::crc32("#{@resource[:bridges][i]}--#{@resource[:bridges][i-1]}")
+ rv.insert(-1, patch_name)
       else
- rv.insert(-1, peer)
+ rv.insert(-1, Zlib::crc32(peer))
       end
       i += 1
     end

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-library (master)

Fix proposed to branch: master
Review: https://review.openstack.org/76344

Changed in fuel:
assignee: Sergey Vasilenko (xenolog) → Vladimir Kuklin (vkuklin)
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-library (stable/4.1)

Fix proposed to branch: stable/4.1
Review: https://review.openstack.org/76345

Changed in fuel:
assignee: Vladimir Kuklin (vkuklin) → Igor Shishkin (teran)
Changed in fuel:
importance: Critical → Medium
milestone: 4.1 → 5.0
Revision history for this message
Igor Shishkin (teran) wrote :

I saw this problem in 5.0-25, but both of patches are abandoned. What we are doing here?

Changed in fuel:
assignee: Igor Shishkin (teran) → Vladimir Kuklin (vkuklin)
Changed in fuel:
status: In Progress → Triaged
Revision history for this message
Vladimir Kuklin (vkuklin) wrote :

we will not ever have OVS <= 1.10

Changed in fuel:
status: Triaged → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.