diff --git a/agent/src/com/cloud/agent/resource/computing/KVMGuestOsMapper.java b/agent/src/com/cloud/agent/resource/computing/KVMGuestOsMapper.java index ce6ae1b8a81..f9f640eab1b 100644 --- a/agent/src/com/cloud/agent/resource/computing/KVMGuestOsMapper.java +++ b/agent/src/com/cloud/agent/resource/computing/KVMGuestOsMapper.java @@ -45,6 +45,8 @@ public class KVMGuestOsMapper { s_mapper.put("Red Hat Enterprise Linux 5.4 (64-bit)", "Red Hat Enterprise Linux 5.4"); s_mapper.put("Red Hat Enterprise Linux 5.5 (32-bit)", "Red Hat Enterprise Linux 5.5"); s_mapper.put("Red Hat Enterprise Linux 5.5 (64-bit)", "Red Hat Enterprise Linux 5.5"); + s_mapper.put("Red Hat Enterprise Linux 6.0 (32-bit)", "Red Hat Enterprise Linux 6.0"); + s_mapper.put("Red Hat Enterprise Linux 6.0 (64-bit)", "Red Hat Enterprise Linux 6.0"); s_mapper.put("Fedora 13", "Fedora 13"); s_mapper.put("Fedora 12", "Fedora 12"); s_mapper.put("Fedora 11", "Fedora 11"); diff --git a/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java b/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java index f520faad07d..82f846c03cb 100644 --- a/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java +++ b/agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java @@ -1834,7 +1834,6 @@ public class LibvirtComputingResource extends ServerResourceBase implements Serv protected Answer execute(StopCommand cmd) { - StopAnswer answer = null; final String vmName = cmd.getVmName(); Long bytesReceived = new Long(0); @@ -1854,14 +1853,16 @@ public class LibvirtComputingResource extends ServerResourceBase implements Serv if (result != null && result2 != null) { result = result2 + result; } - + state = State.Stopped; return new StopAnswer(cmd, result, 0, bytesSent, bytesReceived); } catch (LibvirtException e) { return new StopAnswer(cmd, e.getMessage()); } finally { - if (answer == null || !answer.getResult()) { - synchronized(_vms) { + synchronized(_vms) { + if (state != null) { _vms.put(vmName, state); + } else { + _vms.remove(vmName); } } } diff --git a/agent/src/com/cloud/agent/resource/computing/LibvirtStorageResource.java b/agent/src/com/cloud/agent/resource/computing/LibvirtStorageResource.java index 07950c9f88f..4783bb060cc 100644 --- a/agent/src/com/cloud/agent/resource/computing/LibvirtStorageResource.java +++ b/agent/src/com/cloud/agent/resource/computing/LibvirtStorageResource.java @@ -335,17 +335,11 @@ public class LibvirtStorageResource { } public StorageVol copyVolume(StoragePool destPool, LibvirtStorageVolumeDef destVol, StorageVol srcVol) throws LibvirtException { - if (_computingResource.isCentosHost()) { - /*define a volume, then override the file*/ - - StorageVol vol = destPool.storageVolCreateXML(destVol.toString(), 0); - String srcPath = srcVol.getKey(); - String destPath = vol.getKey(); - Script.runSimpleBashScript("cp " + srcPath + " " + destPath ); - return vol; - } else { - return destPool.storageVolCreateXMLFrom(destVol.toString(), srcVol, 0); - } + StorageVol vol = destPool.storageVolCreateXML(destVol.toString(), 0); + String srcPath = srcVol.getKey(); + String destPath = vol.getKey(); + Script.runSimpleBashScript("cp " + srcPath + " " + destPath ); + return vol; } public LibvirtStoragePoolDef getStoragePoolDef(Connect conn, StoragePool pool) throws LibvirtException {