yes. We need to change "Ok" to "0".
2014/1/2 Hugo Trippaers <h...@trippaers.nl> > Hey Wei, > > Thanks for checking, just pushed the fix for OvsVifDriver as well. I > didn’t check the 4.2 branch yet for this bug, did you? > > Cheers, > > Hugo > > On 2 jan. 2014, at 14:10, Wei ZHOU <ustcweiz...@gmail.com> wrote: > > > Hugo, > > > > Thanks for your commit to fix my mistake. > > > > I checked the source codes just now, it looks > > > plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/OvsVifDriver.java > > also need to be changed. > > And, these commits also need to be cherry-picked to 4.2 branch, right? > > > > -Wei > > > > > > 2014/1/2 <h...@apache.org> > > > >> Updated Branches: > >> refs/heads/master 50c2119a8 -> c024a9382 > >> > >> > >> Commit 3a999e7 changed the return values for the Script.execute > function, > >> this introduced a bug in the openvswitch bridge detection code. > >> > >> > >> Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo > >> Commit: > http://git-wip-us.apache.org/repos/asf/cloudstack/commit/c024a938 > >> Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/c024a938 > >> Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/c024a938 > >> > >> Branch: refs/heads/master > >> Commit: c024a9382689604d7738a9424d680bc9b3ff6793 > >> Parents: 50c2119 > >> Author: Hugo Trippaers <htrippa...@schubergphilis.com> > >> Authored: Thu Jan 2 11:37:16 2014 +0100 > >> Committer: Hugo Trippaers <htrippa...@schubergphilis.com> > >> Committed: Thu Jan 2 13:40:06 2014 +0100 > >> > >> ---------------------------------------------------------------------- > >> .../kvm/resource/LibvirtComputingResource.java | 138 > +++++++++---------- > >> 1 file changed, 68 insertions(+), 70 deletions(-) > >> ---------------------------------------------------------------------- > >> > >> > >> > >> > http://git-wip-us.apache.org/repos/asf/cloudstack/blob/c024a938/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java > >> ---------------------------------------------------------------------- > >> diff --git > >> > a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java > >> > b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java > >> index b3deb55..6b13ccb 100755 > >> --- > >> > a/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java > >> +++ > >> > b/plugins/hypervisors/kvm/src/com/cloud/hypervisor/kvm/resource/LibvirtComputingResource.java > >> @@ -356,7 +356,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> protected static final MessageFormat SnapshotXML = new > >> MessageFormat(" <domainsnapshot>" + " <name>{0}</name>" + " > >> <domain>" > >> - + " <uuid>{1}</uuid>" + " </domain>" + " > >> </domainsnapshot>"); > >> + + " <uuid>{1}</uuid>" + " </domain>" + " > >> </domainsnapshot>"); > >> > >> protected HypervisorType _hypervisorType; > >> protected String _hypervisorURI; > >> @@ -745,7 +745,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> /* Does node support HVM guest? If not, exit */ > >> if (!IsHVMEnabled(conn)) { > >> throw new ConfigurationException("NO HVM support on this > >> machine, please make sure: " + "1. VT/SVM is supported by your CPU, or > is > >> enabled in BIOS. " > >> - + "2. kvm modules are loaded (kvm, > >> kvm_amd|kvm_intel)"); > >> + + "2. kvm modules are loaded (kvm, > >> kvm_amd|kvm_intel)"); > >> } > >> } > >> > >> @@ -765,7 +765,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> > >> if (_hypervisorLibvirtVersion < (9 * 1000 + 10)) { > >> s_logger.warn("LibVirt version 0.9.10 required for guest > >> cpu mode, but version " + prettyVersion(_hypervisorLibvirtVersion) + > >> - " detected, so it will be disabled"); > >> + " detected, so it will be disabled"); > >> _guestCpuMode = ""; > >> _guestCpuModel = ""; > >> } > >> @@ -796,13 +796,13 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> switch (_bridgeType) { > >> - case OPENVSWITCH: > >> - getOvsPifs(); > >> - break; > >> - case NATIVE: > >> - default: > >> - getPifs(); > >> - break; > >> + case OPENVSWITCH: > >> + getOvsPifs(); > >> + break; > >> + case NATIVE: > >> + default: > >> + getPifs(); > >> + break; > >> } > >> > >> if (_pifs.get("private") == null) { > >> @@ -1054,7 +1054,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> String fname = interfaces[i].getName(); > >> s_logger.debug("matchPifFileInDirectory: file name '" + > fname > >> + "'"); > >> if (fname.startsWith("eth") || fname.startsWith("bond") || > >> fname.startsWith("vlan") || fname.startsWith("vx") || > >> fname.startsWith("em") || > >> - fname.matches("^p\\d+p\\d+.*")) { > >> + fname.matches("^p\\d+p\\d+.*")) { > >> return fname; > >> } > >> } > >> @@ -1099,7 +1099,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> command.add("-c"); > >> command.add("ovs-vsctl br-exists " + networkName); > >> String result = command.execute(null); > >> - if ("Ok".equals(result)) { > >> + if ("0".equals(result)) { > >> return true; > >> } else { > >> return false; > >> @@ -1141,7 +1141,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> > >> This also makes sure we never have any old "garbage" > >> defined > >> in libvirt which might haunt us. > >> - */ > >> + */ > >> > >> // check for existing inactive vm definition and remove it > >> // this can sometimes happen during crashes, etc > >> @@ -1322,12 +1322,12 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> String mask = Script.runSimpleBashScript("ifconfig " + label > >> + " | grep 'inet addr:' | cut -d: -f4"); > >> String mac = Script.runSimpleBashScript("ifconfig " + label > + > >> " | grep HWaddr | awk -F \" \" '{print $5}'"); > >> return new OvsFetchInterfaceAnswer(cmd, true, "Interface " + > >> label > >> - + " retrieved successfully", ipadd, mask, mac); > >> + + " retrieved successfully", ipadd, mask, mac); > >> > >> } catch (Exception e) { > >> s_logger.warn("Caught execption when fetching interface", > e); > >> return new OvsFetchInterfaceAnswer(cmd, false, "EXCEPTION:" > >> - + e.getMessage()); > >> + + e.getMessage()); > >> } > >> > >> } > >> @@ -1335,7 +1335,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> private Answer execute(OvsSetupBridgeCommand cmd) { > >> findOrCreateTunnelNetwork(cmd.getKey()); > >> configureTunnelNetwork(cmd.getNetworkId(), cmd.getHostId(), > >> - cmd.getKey()); > >> + cmd.getKey()); > >> s_logger.debug("OVS Bridge configured"); > >> return new Answer(cmd, true, null); > >> } > >> @@ -1378,8 +1378,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> Map<String, String> otherConfig = new HashMap<String, > >> String>(); > >> otherConfig.put("ovs-host-setup", ""); > >> Script.runSimpleBashScript("ovs-vsctl -- --may-exist add-br > " > >> - + nwName + " -- set bridge " + nwName > >> - + " other_config:ovs_host_setup='-1'"); > >> + + nwName + " -- set bridge " + nwName > >> + + " other_config:ovs_host_setup='-1'"); > >> s_logger.debug("### KVM network for tunnels created:" + > >> nwName); > >> } catch (Exception e) { > >> s_logger.warn("createTunnelNetwork failed", e); > >> @@ -1388,13 +1388,13 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> private synchronized boolean configureTunnelNetwork(long networkId, > >> - long hostId, int key) { > >> + long hostId, int key) { > >> try { > >> findOrCreateTunnelNetwork(key); > >> String nwName = "OVSTunnel" + key; > >> String configuredHosts = Script > >> - .runSimpleBashScript("ovs-vsctl get bridge " + nwName > >> - + " other_config:ovs_host_setup"); > >> + .runSimpleBashScript("ovs-vsctl get bridge " + > nwName > >> + + " other_config:ovs_host_setup"); > >> boolean configured = false; > >> if (configuredHosts != null) { > >> String hostIdsStr[] = configuredHosts.split(","); > >> @@ -1414,7 +1414,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> String result = cmd.execute(); > >> if (result != null) { > >> throw new CloudRuntimeException( > >> - "Unable to pre-configure OVS bridge " + nwName > >> + "Unable to pre-configure OVS bridge " + > nwName > >> + " for network ID:" + networkId); > >> } > >> } > >> @@ -1431,11 +1431,11 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> if (!findOrCreateTunnelNetwork(cmd.getKey())) { > >> s_logger.debug("Error during bridge setup"); > >> return new OvsCreateTunnelAnswer(cmd, false, > >> - "Cannot create network", bridge); > >> + "Cannot create network", bridge); > >> } > >> > >> configureTunnelNetwork(cmd.getNetworkId(), cmd.getFrom(), > >> - cmd.getKey()); > >> + cmd.getKey()); > >> Script command = new Script(_ovsTunnelPath, _timeout, > >> s_logger); > >> command.add("create_tunnel"); > >> command.add("--bridge", bridge); > >> @@ -1447,7 +1447,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> String result = command.execute(); > >> if (result != null) { > >> return new OvsCreateTunnelAnswer(cmd, true, result, > null, > >> - bridge); > >> + bridge); > >> } else { > >> return new OvsCreateTunnelAnswer(cmd, false, result, > >> bridge); > >> } > >> @@ -1462,7 +1462,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> try { > >> if (!findOrCreateTunnelNetwork(cmd.getKey())) { > >> s_logger.warn("Unable to find tunnel network for GRE > key:" > >> - + cmd.getKey()); > >> + + cmd.getKey()); > >> return new Answer(cmd, false, "No network found"); > >> } > >> > >> @@ -1513,7 +1513,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> It COULD also do it the other way around, but the code in > >> the ManagementServerImpl shows > >> that it always sets copyToSecondary to true > >> > >> - */ > >> + */ > >> boolean copyToSecondary = cmd.toSecondaryStorage(); > >> String volumePath = cmd.getVolumePath(); > >> StorageFilerTO pool = cmd.getPool(); > >> @@ -1526,8 +1526,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } catch (CloudRuntimeException e) { > >> if (e.getMessage().contains("not found")) { > >> primaryPool = > >> - > >> _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> - cmd.getPool().getUserInfo(), > >> cmd.getPool().getType()); > >> + > >> _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> + cmd.getPool().getUserInfo(), > >> cmd.getPool().getType()); > >> } else { > >> return new CopyVolumeAnswer(cmd, false, > >> e.getMessage(), null, null); > >> } > >> @@ -1641,7 +1641,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> vol = primaryPool.createPhysicalDisk(dskch.getPath(), > >> dskch.getSize()); > >> } > >> VolumeTO volume = > >> - new VolumeTO(cmd.getVolumeId(), dskch.getType(), > >> pool.getType(), pool.getUuid(), pool.getPath(), vol.getName(), > >> vol.getName(), disksize, null); > >> + new VolumeTO(cmd.getVolumeId(), dskch.getType(), > >> pool.getType(), pool.getUuid(), pool.getPath(), vol.getName(), > >> vol.getName(), disksize, null); > >> volume.setBytesReadRate(dskch.getBytesReadRate()); > >> volume.setBytesWriteRate(dskch.getBytesWriteRate()); > >> volume.setIopsReadRate(dskch.getIopsReadRate()); > >> @@ -1710,7 +1710,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> if (pool.getType() == StoragePoolType.CLVM && volFormat == > >> PhysicalDiskFormat.RAW) { > >> return "CLVM"; > >> } else if ((poolType == StoragePoolType.NetworkFilesystem || > >> poolType == StoragePoolType.SharedMountPoint || poolType == > >> StoragePoolType.Filesystem) && > >> - volFormat == PhysicalDiskFormat.QCOW2) { > >> + volFormat == PhysicalDiskFormat.QCOW2) { > >> return "QCOW2"; > >> } > >> return null; > >> @@ -1770,7 +1770,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> s_logger.debug("got to the stage where we execute the > >> volume resize, params:" + path + "," + currentSize + "," + newSize + > "," + > >> type + "," + > >> - vmInstanceName + "," + shrinkOk); > >> + vmInstanceName + "," + shrinkOk); > >> final Script resizecmd = new Script(_resizeVolumePath, > >> _cmdsTimeout, s_logger); > >> resizecmd.add("-s", String.valueOf(newSize)); > >> resizecmd.add("-c", String.valueOf(currentSize)); > >> @@ -1826,7 +1826,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } else { > >> //untagged or not matching (eth|bond)#.# > >> s_logger.debug("failed to get vNet id from bridge " > + > >> brName > >> - + "attached to physical interface" + pif + > ", > >> perhaps untagged interface"); > >> + + "attached to physical interface" + pif + > ", > >> perhaps untagged interface"); > >> return ""; > >> } > >> } > >> @@ -1862,7 +1862,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> List<InterfaceDef> ifaces = getInterfaces(conn, > >> dhcpName); > >> InterfaceDef guestNic = ifaces.get(0); > >> script.add(opr, "-b", _guestBridgeName, "-p", > >> primaryPvlan, "-i", isolatedPvlan, "-n", dhcpName, "-d", dhcpIp, "-m", > >> dhcpMac, "-I", > >> - guestNic.getDevName()); > >> + guestNic.getDevName()); > >> } else { > >> script.add(opr, "-b", _guestBridgeName, "-p", > >> primaryPvlan, "-i", isolatedPvlan, "-n", dhcpName, "-d", dhcpIp, "-m", > >> dhcpMac); > >> } > >> @@ -2103,7 +2103,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } else if (pluggedVlanId == null) { > >> /*this should only be true in the case of link local > >> bridge*/ > >> return new SetSourceNatAnswer(cmd, false, "unable to > >> find the vlan id for bridge " + pluggedVlanBr + " when attempting to set > >> up" + pubVlan + > >> - " on router " + routerName); > >> + " on router " + routerName); > >> } else if (pluggedVlanId.equals(pubVlan)) { > >> break; > >> } > >> @@ -2143,7 +2143,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> if (pluggedVlan.equalsIgnoreCase(_linkLocalBridgeName)) > { > >> broadcastUriToNicNum.put("LinkLocal", devNum); > >> } else if > >> (pluggedVlan.equalsIgnoreCase(_publicBridgeName) || > >> pluggedVlan.equalsIgnoreCase(_privBridgeName) || > >> - pluggedVlan.equalsIgnoreCase(_guestBridgeName)) { > >> + > pluggedVlan.equalsIgnoreCase(_guestBridgeName)) { > >> > >> > broadcastUriToNicNum.put(BroadcastDomainType.Vlan.toUri(Vlan.UNTAGGED).toString(), > >> devNum); > >> } else { > >> > >> broadcastUriToNicNum.put(getBroadcastUriFromBridge(pluggedVlan), > devNum); > >> @@ -2188,7 +2188,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> broadcastUriAllocatedToVM.put("LinkLocal", nicPos); > >> } else { > >> if > >> (nic.getBrName().equalsIgnoreCase(_publicBridgeName) || > >> nic.getBrName().equalsIgnoreCase(_privBridgeName) || > >> - > >> nic.getBrName().equalsIgnoreCase(_guestBridgeName)) { > >> + > >> nic.getBrName().equalsIgnoreCase(_guestBridgeName)) { > >> > >> > broadcastUriAllocatedToVM.put(BroadcastDomainType.Vlan.toUri(Vlan.UNTAGGED).toString(), > >> nicPos); > >> } else { > >> String broadcastUri = > >> getBroadcastUriFromBridge(nic.getBrName()); > >> @@ -2212,8 +2212,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> nicNum = > >> broadcastUriAllocatedToVM.get(ip.getBroadcastUri()); > >> networkUsage(routerIp, "addVif", "eth" + nicNum); > >> result = > >> - > _virtRouterResource.assignPublicIpAddress(routerName, > >> routerIp, ip.getPublicIp(), ip.isAdd(), ip.isFirstIP(), > ip.isSourceNat(), > >> ip.getBroadcastUri(), > >> - ip.getVlanGateway(), ip.getVlanNetmask(), > >> ip.getVifMacAddress(), nicNum, newNic); > >> + > >> _virtRouterResource.assignPublicIpAddress(routerName, routerIp, > >> ip.getPublicIp(), ip.isAdd(), ip.isFirstIP(), ip.isSourceNat(), > >> ip.getBroadcastUri(), > >> + ip.getVlanGateway(), > ip.getVlanNetmask(), > >> ip.getVifMacAddress(), nicNum, newNic); > >> > >> if (result == null) { > >> results[i++] = ip.getPublicIp() + " - success"; > >> @@ -2378,8 +2378,6 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> Rbd rbd = new Rbd(io); > >> RbdImage image = rbd.open(snapshotDisk.getName(), > >> snapshotName); > >> > >> - long startTime = System.currentTimeMillis() / 1000; > >> - > >> File fh = new File(snapshotDestPath); > >> BufferedOutputStream bos = new > >> BufferedOutputStream(new FileOutputStream(fh)); > >> int chunkSize = 4194304; > >> @@ -2582,8 +2580,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } catch (CloudRuntimeException e) { > >> if (e.getMessage().contains("not found")) { > >> primary = > >> - > >> _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> - cmd.getPool().getUserInfo(), > >> cmd.getPool().getType()); > >> + > >> _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> + cmd.getPool().getUserInfo(), > >> cmd.getPool().getType()); > >> } else { > >> return new CreatePrivateTemplateAnswer(cmd, false, > >> e.getMessage()); > >> } > >> @@ -2609,8 +2607,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> s_logger.debug("Converting RBD disk " + disk.getPath() + > >> " into template " + cmd.getUniqueName()); > >> > >> QemuImgFile srcFile = > >> - new > >> QemuImgFile(KVMPhysicalDisk.RBDStringBuilder(primary.getSourceHost(), > >> primary.getSourcePort(), primary.getAuthUserName(), > >> - primary.getAuthSecret(), disk.getPath())); > >> + new > >> QemuImgFile(KVMPhysicalDisk.RBDStringBuilder(primary.getSourceHost(), > >> primary.getSourcePort(), primary.getAuthUserName(), > >> + primary.getAuthSecret(), > disk.getPath())); > >> srcFile.setFormat(PhysicalDiskFormat.RAW); > >> > >> QemuImgFile destFile = new QemuImgFile(tmpltPath + "/" + > >> cmd.getUniqueName() + ".qcow2"); > >> @@ -2621,7 +2619,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> q.convert(srcFile, destFile); > >> } catch (QemuImgException e) { > >> s_logger.error("Failed to create new template while > >> converting " + srcFile.getFileName() + " to " + destFile.getFileName() > + " > >> the error was: " + > >> - e.getMessage()); > >> + e.getMessage()); > >> } > >> > >> File templateProp = new File(tmpltPath + > >> "/template.properties"); > >> @@ -2655,7 +2653,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> loc.save(); > >> > >> return new CreatePrivateTemplateAnswer(cmd, true, null, > >> templateInstallFolder + cmd.getUniqueName() + ".qcow2", > info.virtualSize, > >> info.size, > >> - cmd.getUniqueName(), ImageFormat.QCOW2); > >> + cmd.getUniqueName(), ImageFormat.QCOW2); > >> } catch (InternalErrorException e) { > >> return new CreatePrivateTemplateAnswer(cmd, false, > >> e.toString()); > >> } catch (IOException e) { > >> @@ -2726,8 +2724,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> > >> protected Answer execute(ModifyStoragePoolCommand cmd) { > >> KVMStoragePool storagepool = > >> - _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> cmd.getPool() > >> - .getUserInfo(), cmd.getPool().getType()); > >> + > >> _storagePoolMgr.createStoragePool(cmd.getPool().getUuid(), > >> cmd.getPool().getHost(), cmd.getPool().getPort(), > cmd.getPool().getPath(), > >> cmd.getPool() > >> + .getUserInfo(), cmd.getPool().getType()); > >> if (storagepool == null) { > >> return new Answer(cmd, false, " Failed to create storage > >> pool"); > >> } > >> @@ -2751,15 +2749,15 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> boolean result = > >> - add_network_rules(cmd.getVmName(), > >> Long.toString(cmd.getVmId()), cmd.getGuestIp(), cmd.getSignature(), > >> Long.toString(cmd.getSeqNum()), cmd.getGuestMac(), > >> - cmd.stringifyRules(), vif, brname, > cmd.getSecIpsString()); > >> + add_network_rules(cmd.getVmName(), > >> Long.toString(cmd.getVmId()), cmd.getGuestIp(), cmd.getSignature(), > >> Long.toString(cmd.getSeqNum()), cmd.getGuestMac(), > >> + cmd.stringifyRules(), vif, brname, > >> cmd.getSecIpsString()); > >> > >> if (!result) { > >> s_logger.warn("Failed to program network rules for vm " + > >> cmd.getVmName()); > >> return new SecurityGroupRuleAnswer(cmd, false, "programming > >> network rules failed"); > >> } else { > >> s_logger.debug("Programmed network rules for vm " + > >> cmd.getVmName() + " guestIp=" + cmd.getGuestIp() + ",ingress numrules=" > + > >> cmd.getIngressRuleSet().length + > >> - ",egress numrules=" + cmd.getEgressRuleSet().length); > >> + ",egress numrules=" + > cmd.getEgressRuleSet().length); > >> return new SecurityGroupRuleAnswer(cmd); > >> } > >> } > >> @@ -2850,8 +2848,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> KVMStoragePool primary = > >> _storagePoolMgr.getStoragePool(cmd.getPooltype(), cmd.getPoolUuid()); > >> KVMPhysicalDisk disk = > >> primary.getPhysicalDisk(cmd.getVolumePath()); > >> attachOrDetachDisk(conn, cmd.getAttach(), cmd.getVmName(), > >> disk, > >> - cmd.getDeviceId().intValue(), cmd.getBytesReadRate(), > >> cmd.getBytesWriteRate(), cmd.getIopsReadRate(), cmd.getIopsWriteRate(), > >> - cmd.getCacheMode()); > >> + cmd.getDeviceId().intValue(), > cmd.getBytesReadRate(), > >> cmd.getBytesWriteRate(), cmd.getIopsReadRate(), cmd.getIopsWriteRate(), > >> + cmd.getCacheMode()); > >> } catch (LibvirtException e) { > >> return new AttachVolumeAnswer(cmd, e.toString()); > >> } catch (InternalErrorException e) { > >> @@ -2985,7 +2983,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> description for the instance to be used on the target > >> host. > >> > >> This is supported by libvirt-java from version 0.50.0 > >> - */ > >> + */ > >> xmlDesc = dm.getXMLDesc(0).replace(_privateIp, > >> cmd.getDestinationIp()); > >> > >> dconn = new Connect("qemu+tcp://" + cmd.getDestinationIp() + > >> "/system"); > >> @@ -3768,7 +3766,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> we pass the pool's UUID as the authSecret > >> */ > >> > >> disk.defNetworkBasedDisk(physicalDisk.getPath().replace("rbd:", ""), > >> pool.getSourceHost(), pool.getSourcePort(), pool.getAuthUserName(), > >> - pool.getUuid(), devId, diskBusType, > >> diskProtocol.RBD); > >> + pool.getUuid(), devId, diskBusType, > >> diskProtocol.RBD); > >> } else if (pool.getType() == StoragePoolType.CLVM || > >> physicalDisk.getFormat() == PhysicalDiskFormat.RAW) { > >> disk.defBlockBasedDisk(physicalDisk.getPath(), > devId, > >> diskBusType); > >> } else { > >> @@ -3864,7 +3862,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> protected synchronized String attachOrDetachISO(Connect conn, String > >> vmName, String isoPath, boolean isAttach) throws LibvirtException, > >> URISyntaxException, > >> - InternalErrorException { > >> + InternalErrorException { > >> String isoXml = null; > >> if (isoPath != null && isAttach) { > >> int index = isoPath.lastIndexOf("/"); > >> @@ -3897,8 +3895,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> protected synchronized String attachOrDetachDisk(Connect conn, > >> - boolean attach, String vmName, KVMPhysicalDisk attachingDisk, > >> - int devId, Long bytesReadRate, Long bytesWriteRate, Long > >> iopsReadRate, Long iopsWriteRate, String cacheMode) throws > >> LibvirtException, InternalErrorException { > >> + boolean attach, String vmName, KVMPhysicalDisk > attachingDisk, > >> + int devId, Long bytesReadRate, Long bytesWriteRate, Long > >> iopsReadRate, Long iopsWriteRate, String cacheMode) throws > >> LibvirtException, InternalErrorException { > >> List<DiskDef> disks = null; > >> Domain dm = null; > >> DiskDef diskdef = null; > >> @@ -3925,7 +3923,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> diskdef = new DiskDef(); > >> if (attachingPool.getType() == StoragePoolType.RBD) { > >> diskdef.defNetworkBasedDisk(attachingDisk.getPath(), > >> attachingPool.getSourceHost(), attachingPool.getSourcePort(), > >> attachingPool.getAuthUserName(), > >> - attachingPool.getUuid(), devId, > >> DiskDef.diskBus.VIRTIO, diskProtocol.RBD); > >> + attachingPool.getUuid(), devId, > >> DiskDef.diskBus.VIRTIO, diskProtocol.RBD); > >> } else if (attachingDisk.getFormat() == > >> PhysicalDiskFormat.QCOW2) { > >> diskdef.defFileBasedDisk(attachingDisk.getPath(), > >> devId, DiskDef.diskBus.VIRTIO, DiskDef.diskFmtType.QCOW2); > >> } else if (attachingDisk.getFormat() == > >> PhysicalDiskFormat.RAW) { > >> @@ -4025,8 +4023,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> final List<Object> info = getHostInfo(); > >> > >> final StartupRoutingCommand cmd = > >> - new StartupRoutingCommand((Integer)info.get(0), > >> (Long)info.get(1), (Long)info.get(2), (Long)info.get(4), > >> (String)info.get(3), _hypervisorType, > >> - RouterPrivateIpStrategy.HostLocal); > >> + new StartupRoutingCommand((Integer)info.get(0), > >> (Long)info.get(1), (Long)info.get(2), (Long)info.get(4), > >> (String)info.get(3), _hypervisorType, > >> + RouterPrivateIpStrategy.HostLocal); > >> cmd.setStateChanges(changes); > >> cmd.setCpuSockets((Integer)info.get(5)); > >> fillNetworkInformation(cmd); > >> @@ -4042,8 +4040,8 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> > >> KVMStoragePool localStoragePool = > >> _storagePoolMgr.createStoragePool(_localStorageUUID, "localhost", -1, > >> _localStoragePath, "", StoragePoolType.Filesystem); > >> com.cloud.agent.api.StoragePoolInfo pi = > >> - new > >> com.cloud.agent.api.StoragePoolInfo(localStoragePool.getUuid(), > >> cmd.getPrivateIpAddress(), _localStoragePath, _localStoragePath, > >> - StoragePoolType.Filesystem, > >> localStoragePool.getCapacity(), localStoragePool.getAvailable()); > >> + new > >> com.cloud.agent.api.StoragePoolInfo(localStoragePool.getUuid(), > >> cmd.getPrivateIpAddress(), _localStoragePath, _localStoragePath, > >> + StoragePoolType.Filesystem, > >> localStoragePool.getCapacity(), localStoragePool.getAvailable()); > >> > >> sscmd = new StartupStorageCommand(); > >> sscmd.setPoolInfo(pi); > >> @@ -4723,11 +4721,11 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> String guestOSName = KVMGuestOsMapper.getGuestOsName(guestOS); > >> if (guestOS.startsWith("Ubuntu") || > >> guestOSName.startsWith("Fedora 13") || guestOSName.startsWith("Fedora > 12") > >> || guestOSName.startsWith("Fedora 11") || > >> - guestOSName.startsWith("Fedora 10") || > >> guestOSName.startsWith("Fedora 9") || guestOSName.startsWith("CentOS > 5.3") > >> || guestOSName.startsWith("CentOS 5.4") || > >> - guestOSName.startsWith("CentOS 5.5") || > >> guestOS.startsWith("CentOS") || guestOS.startsWith("Fedora") || > >> - guestOSName.startsWith("Red Hat Enterprise Linux 5.3") || > >> guestOSName.startsWith("Red Hat Enterprise Linux 5.4") || > >> - guestOSName.startsWith("Red Hat Enterprise Linux 5.5") || > >> guestOSName.startsWith("Red Hat Enterprise Linux 6") || > >> guestOS.startsWith("Debian GNU/Linux") || > >> - guestOSName.startsWith("Other PV")) { > >> + guestOSName.startsWith("Fedora 10") || > >> guestOSName.startsWith("Fedora 9") || guestOSName.startsWith("CentOS > 5.3") > >> || guestOSName.startsWith("CentOS 5.4") || > >> + guestOSName.startsWith("CentOS 5.5") || > >> guestOS.startsWith("CentOS") || guestOS.startsWith("Fedora") || > >> + guestOSName.startsWith("Red Hat Enterprise Linux 5.3") > || > >> guestOSName.startsWith("Red Hat Enterprise Linux 5.4") || > >> + guestOSName.startsWith("Red Hat Enterprise Linux 5.5") > || > >> guestOSName.startsWith("Red Hat Enterprise Linux 6") || > >> guestOS.startsWith("Debian GNU/Linux") || > >> + guestOSName.startsWith("Other PV")) { > >> return true; > >> } else { > >> return false; > >> @@ -5073,7 +5071,7 @@ public class LibvirtComputingResource extends > >> ServerResourceBase implements Serv > >> } > >> > >> private boolean add_network_rules(String vmName, String vmId, String > >> guestIP, String sig, String seq, String mac, String rules, String vif, > >> String brname, > >> - String secIps) { > >> + String secIps) { > >> if (!_canBridgeFirewall) { > >> return false; > >> } > >> > >> > >