L23Network module incompatible with OVS <= 1.10.0
Bug #1284801 reported by
Vladimir Kuklin
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-
if (strlen(peer) >= IFNAMSIZ) {
return EINVAL;
}
Changed in fuel: | |
assignee: | Vladimir Kuklin (vkuklin) → Igor Shishkin (teran) |
Changed in fuel: | |
importance: | Critical → Medium |
milestone: | 4.1 → 5.0 |
Changed in fuel: | |
status: | In Progress → Triaged |
To post a comment you must log in.
suggested solution under testing:
--- a/deployment/ puppet/ l23network/ lib/puppet/ provider/ l2_ovs_ patch/ovs. rb puppet/ l23network/ lib/puppet/ provider/ l2_ovs_ patch/ovs. rb :Type.type( :l2_ovs_ patch). provide( :ovs) do commands( ovs-vsctl" , :Type.type( :l2_ovs_ patch). provide( :ovs) do :bridges] [i]}--# {@resource[ :bridges] [i-1]}" ) "#{@resource[ :bridges] [i]}--# {@resource[ :bridges] [i-1]}" )
+++ b/deployment/
@@ -1,3 +1,4 @@
+require 'zlib'
Puppet:
optional_
:vsctl => "/usr/bin/
@@ -12,9 +13,10 @@ Puppet:
i = 0
for peer in @resource[:peers]
if peer == nil
- rv.insert(-1, "#{@resource[
+ patch_name = Zlib::crc32(
+ rv.insert(-1, patch_name)
else
- rv.insert(-1, peer)
+ rv.insert(-1, Zlib::crc32(peer))
end
i += 1
end