----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/12496/ -----------------------------------------------------------
Review request for cloudstack, Alena Prokharchyk, Chiradeep Vittal, Murali Reddy, Hugo Trippaers, and Sheng Yang. Bugs: https://issues.apache.org/jira/browse/CLOUDSTACK-3431 Repository: cloudstack-git Description ------- #) Bug description When last VM which uses the guest network disappeared on the host, KVM agent should clean up it's guest network bridge and vlanIf but it doesn't. Biggest cause is missing parameter on calling modifyvlan.sh. But I found there're more errors related to this issue. 1) missing parameter on calling modifyvlan.sh in com.cloud.hypervisor.kvm.resource.LibvirtComputingResource.cleanupVnet(Connect, String) 2) VirtualMachineName.getVnet(String) will never return vnet 3) com.cloud.agent.api.StopCommand.getVnet(String) will never return vnet 4) com.cloud.hypervisor.kvm.resource.LibvirtComputingResource doesn't call cleanupVnet(Connect, String) when they execute UnPlugCommand #) This patch changes as below. - Move vnetBridge clean up function from LibvirtComputingResource to BridgeVifDriver -- since only BridgeVifDriver have to handle this event - LibvirtComputingResource now properly call VifDriver.unplug() when it receives UnPlugCommand - Remove not working and no longer used method getVnet(String) from VirtualMachineName - Remove not working and no longer used method getVnet() from StopCommand - Remove unused constructer StopCommand(VirtualMachine, String, boolean) from StopCommand - Remove unused member vnet from StopCommand - Remove unused member _modifyVlanPath from OvsVifDriver Diffs ----- api/src/com/cloud/vm/VirtualMachineName.java 81838b9 core/src/com/cloud/agent/api/StopCommand.java a3ee3c9 plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/BridgeVifDriver.java 0db83cc plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java 914017c plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/OvsVifDriver.java 951badd Diff: https://reviews.apache.org/r/12496/diff/ Testing ------- Tested with 2 KVM hosts and confirmed it correctly manipulate vnetBridge with start, stop, migrate, plug, and unplug event Thanks, Toshiaki Hatano