Thanks for the feedback.

I've merged the changes into the master branch.

The associated Jenkins run is here: 
https://builds.apache.org/job/cloudstack-master-maven/487/

Commits that are part of this merge:
a0373fe Summary: Apply feedback from Wido
a8fcc4f Summary: Add documentation for the KVM support for OpenVswitch
2d69a18 Summary: Begone pesky tabs
9f00302 Summary: Polish and shine
4267a3f Summary: copy/paste error
87fe646 Summary: small fix causing trouble when shutting down virtual machines
1ceecc9 Summary: Fix logic error
e0ecf7b Summary: Add vlan configuration to the network inteface definition
68523e6 Summary: Add initial support for OpenVswitch to the KVM hypervisor
3d570c7 Summary: Add vlan configuration to the network inteface definition
a0ade28 Summary: Add initial support for OpenVswitch to the KVM hypervisor
11fd121 Summary: Polish and shine
32c5fed Summary: copy/paste error
8738fee Summary: small fix causing trouble when shutting down virtual machines
4764f98 Summary: Fix logic error
c6916ff Summary: Add vlan configuration to the network inteface definition
c9c40d0 Summary: Add initial support for OpenVswitch to the KVM hypervisor
9adf277 Summary: Add vlan configuration to the network inteface definition
ca57868 Summary: Add initial support for OpenVswitch to the KVM hypervisor

Issues resolved with this merge
CLOUDSTACK-824
CLOUDSTACK-727
CLOUDSTACK-934


Cheers,

Hugo


-----Original Message-----
From: Alex Huang [mailto:alex.hu...@citrix.com] 
Sent: maandag 21 januari 2013 17:52
To: cloudstack-dev@incubator.apache.org
Subject: RE: [MERGE, ACS41] Merge branch cloud-agent-with-openvswitch

Can we use [MERGE][ACS41] instead of this format?  I don't know how others 
setup their mail filters but mine are on tags within the '[]' and it doesn't 
catch this email.

Thanks.

--Alex

> -----Original Message-----
> From: Hugo Trippaers [mailto:htrippa...@schubergphilis.com]
> Sent: Monday, January 21, 2013 3:37 AM
> To: cloudstack-dev@incubator.apache.org
> Subject: RE: [MERGE, ACS41] Merge branch cloud-agent-with-openvswitch
> 
> https://git-wip-us.apache.org/repos/asf?p=incubator-
> cloudstack.git;a=commit;h=a0373fe1ff2001c5a9deee537d6862327f8818cc
> 
> Comments inline
> 
> > -----Original Message-----
> > From: Wido den Hollander [mailto:w...@widodh.nl]
> > Sent: Thursday, January 17, 2013 12:47 PM
> > To: cloudstack-dev@incubator.apache.org
> > Subject: Re: [MERGE, ACS41] Merge branch 
> > cloud-agent-with-openvswitch
> >
> > On 01/15/2013 10:32 AM, Hugo Trippaers wrote:
> > > Hey all,
> > >
> > > I would like to merge my branch with master. This branch deals 
> > > with the
> > items reported in tickets CLOUDSTACK-934, CLOUDSTACK-727,
> CLOUDSTACK-
> > 101. Basically the patch introduces support for dealing with bridges 
> > and interfaces on KVM hypervisors running openvswitch. Support is 
> > included
> for
> > both vlan and Nicira NVP based networks.
> > >
> > > During development some bugs were discovered, following the 
> > > commits for those fixes
> > > - 1ceecc92c88c84b99c99547f5c086657ec26f8d7 Fix logic error in 
> > > ConfigurationServerImpl.java
> > > - 87fe64695305d6a2c505f757ab7607b765c313b7 NPE in 
> > > KVMStoragePoolManager
> > >
> > > Testing done
> > > - mvn clean test
> > > - setup clean CloudStack installation with KVM server using vlan 
> > > based
> > isolation. Deploy systemvms and several instances on isolated 
> > networks
> and
> > test connectivity.
> > > - reuse existing CloudStack installation with Nicira NVP. Add 
> > > cluster with
> > KVM hosts. Deploy several instances and networks and test connectivity.
> > >
> > > Testing not done
> > > - basic networking based setup, I figured that if advanced 
> > > networks work,
> > basic networks should work as well.
> > >
> > > Risk
> > > - minimal risk, anyone willing to use this feature needs to 
> > > explicitly enable
> > this by making changes to agent.properties for the cloud-agent. By 
> > default the current bridge drivers will be used.
> > >
> > > Database changes
> > > - none
> > >
> > > Documentation tracked in a separate ticket: CLOUDSTACK-977
> > >
> > > Cheers,
> > >
> >
> > I've been reviewing this, but I haven't been able to test the code 
> > since I
> don't
> > have anything for this running.
> >
> > I did find some things which I report in random order :) I basically 
> > went
> from
> > commit to commit in the branch and checked it.
> >
> > Globally I've found some indentation things, like:
> >
> >          switch (_bridgeType) {
> >          case OPENVSWITCH:
> >              getOvsPifs();
> >              break;
> >          case NATIVE:
> >          default:
> >              getPifs();
> >              break;
> >          }
> >
> > Isn't the indentation missing there for "case"?
> >
> > Further in for example OvsVifDriver there are some blank lines with 
> > spaces or trailing spaces.
> 
> Should all be fixed with commit https://git-wip-
> us.apache.org/repos/asf?p=incubator-
> cloudstack.git;a=commit;h=2d69a1855de5110c57010e248f83d88607c668fe
> 
> >
> > You also seem to write if/else-contitions in various ways, like:
> >
> > if (....) {
> >
> > }
> > else {
> >
> > }
> >
> > I thought our code convention said we should use:
> >
> > if (....) {
> >
> > } else {
> >
> > }
> >
> > Not a very big deal, but just to prevent other people from taking 
> > over the "habbits".
> 
> Fixed :-)
> 
> >
> > In OvsVifDriver there is a method called: "deleteExitingLinkLocalRoutTable"
> >
> > Isn't that a typo? Shouldn't 'Rout' be 'Route'?
> 
> Copy paste error from BridgeVifDriver, fixed.
> 
> >
> > What I don't get in LibvirtVMDef is this:
> >
> > if (_virtualPortType != null) {
> >    netBuilder.append("<virtualport type='" + _virtualPortType + "'>\n");
> >    if (_virtualPortInterfaceId != null) {
> >      netBuilder.append("<parameters interfaceid='" +
> _virtualPortInterfaceId
> > + "'/>\n");
> >    }
> >    netBuilder.append("</virtualport>\n");
> > }
> >
> > Why should a virtualport be added if the interfaceId is null? Should 
> > the first
> if
> > already check if both the type AND id are set? Or can the ID be set 
> > after the VM is running? (In OvsVifDriver?)
> 
> The virtualport with virtual port type is required for LibVirt to know 
> the port should be configured using OpenVswitch. Without this the 
> default bridge implementation will be used (according to the 
> documentation at
> http://libvirt.org/formatnetwork.html)
> 
> The interface id is an optional extension that is required for using 
> openvswitch with NiciraNvp. This id is used to match the vif on the 
> hypervisor with the port configured on the logical switch in the nicira 
> system.
> 
> 
> >
> > If so, couldn't that be an issue if the VM is migrated and this XML 
> > definition isn't properly transferred to the other host?
> >
> > When setting the VLAN tag in the XML definition you do this check:
> >
> > if (_vlanTag != -1) {
> >    netBuilder.append("<vlan trunk='no'>\n<tag id='" + _vlanTag + 
> > "'/>\n</vlan>"); }
> >
> > It's my understanding that VLAN ID 0 and 4095 are reserved VLAN IDs, 
> > so shouldn't it be:
> >
> > if (_vlanTag > 0) {
> > ...
> > }
> 
> True, fixed.
> 
> >
> > This is what I found while doing my first review. Like I said, I 
> > can't test the
> real
> > logic now.
> >
> > Wido
> >
> > > Hugo
> > >

Reply via email to