You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ha...@apache.org on 2013/10/28 18:39:17 UTC

git commit: updated refs/heads/master to 3e70b14

Updated Branches:
  refs/heads/master 7116268f3 -> 3e70b145c


CLOUDSTACK-4967: vxlan doesn't scale

- Fix inproper multicast address creation (when VNI > 65535)
- Fix missing bride name in delete oparation

Signed-off-by : Toshiaki Hatano <ha...@haeena.net>


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/3e70b145
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/3e70b145
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/3e70b145

Branch: refs/heads/master
Commit: 3e70b145c45126593dd3b1116a82d3cd8bc18b87
Parents: 7116268
Author: Toshiaki Hatano <ha...@haeena.net>
Authored: Tue Oct 29 02:37:09 2013 +0900
Committer: Toshiaki Hatano <ha...@haeena.net>
Committed: Tue Oct 29 02:38:02 2013 +0900

----------------------------------------------------------------------
 scripts/vm/network/vnet/modifyvxlan.sh | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/3e70b145/scripts/vm/network/vnet/modifyvxlan.sh
----------------------------------------------------------------------
diff --git a/scripts/vm/network/vnet/modifyvxlan.sh b/scripts/vm/network/vnet/modifyvxlan.sh
index 45d141a..a3ec71f 100755
--- a/scripts/vm/network/vnet/modifyvxlan.sh
+++ b/scripts/vm/network/vnet/modifyvxlan.sh
@@ -16,7 +16,7 @@
 # specific language governing permissions and limitations
 # under the License.
 
-# modifyvnet.sh -- adds and deletes VXLANs from a Routing Server
+# modifyvxlan.sh -- adds and deletes VXLANs from a Routing Server
 # set -x
 
 ## TODO(VXLAN): MTU, IPv6 underlying
@@ -30,7 +30,7 @@ addVxlan() {
 	local pif=$2
 	local vxlanDev=vxlan$vxlanId
 	local vxlanBr=$3
-	local mcastGrp="239.$(( $vxlanId >> 16 % 256 )).$(( $vxlanId >> 8 % 256 )).$(( $vxlanId % 256 ))"
+	local mcastGrp="239.$(( ($vxlanId >> 16) % 256 )).$(( ($vxlanId >> 8) % 256 )).$(( $vxlanId % 256 ))"
 	
 	## TODO(VXLAN): $brif (trafficlabel) should be passed from caller because we cannot assume 1:1 mapping between pif and brif.
 	# lookup bridge interface 
@@ -133,7 +133,10 @@ deleteVxlan() {
 	local pif=$2
 	local vxlanDev=vxlan$vxlanId
 	local vxlanBr=$3
-	local mcastGrp="239.$(( $vxlanId >> 16 % 256 )).$(( $vxlanId >> 8 % 256 )).$(( $vxlanId % 256 ))"
+	local mcastGrp="239.$(( ($vxlanId >> 16) % 256 )).$(( ($vxlanId >> 8) % 256 )).$(( $vxlanId % 256 ))"
+	
+	local sysfs_dir=/sys/devices/virtual/net/
+	local brif=`find ${sysfs_dir}*/brif/ -name $pif | sed -e "s,$sysfs_dir,," | sed -e 's,/brif/.*$,,'`
 	
 	ip route del $mcastGrp/32 dev $brif