CLOUDSTACK-2683: DevCloud systemVMs fail to launch

DevCloud is a XCP Kronos based xen. For this we use the XcpOssResource
whose memory limits were not set explicitly. Instead the base
CitrixResourceBase would set the limits. static_min was set to 128MB
failing the cpvm and ssvm start fails whose offerings have 100MB set to
the max limits.

Signed-off-by: Prasanna Santhanam <t...@apache.org>


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

Branch: refs/heads/vmware-storage-motion
Commit: 5b902c700513423921da48161acd7f8cff8a0b56
Parents: dc822a8
Author: Prasanna Santhanam <t...@apache.org>
Authored: Sun May 26 14:46:27 2013 +0530
Committer: Prasanna Santhanam <t...@apache.org>
Committed: Sun May 26 14:49:52 2013 +0530

----------------------------------------------------------------------
 .../hypervisor/xen/resource/XcpOssResource.java    |   30 ++++++++------
 1 files changed, 17 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/5b902c70/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java
----------------------------------------------------------------------
diff --git 
a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java
 
b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java
index 357b433..870049c 100644
--- 
a/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java
+++ 
b/plugins/hypervisors/xen/src/com/cloud/hypervisor/xen/resource/XcpOssResource.java
@@ -17,17 +17,6 @@
 
 package com.cloud.hypervisor.xen.resource;
 
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import javax.ejb.Local;
-
-import org.apache.log4j.Logger;
-import org.apache.xmlrpc.XmlRpcException;
-
 import com.cloud.agent.api.Answer;
 import com.cloud.agent.api.Command;
 import com.cloud.agent.api.NetworkUsageAnswer;
@@ -46,14 +35,24 @@ import com.cloud.utils.script.Script;
 import com.cloud.vm.VirtualMachine;
 import com.xensource.xenapi.Connection;
 import com.xensource.xenapi.Types;
+import com.xensource.xenapi.Types.XenAPIException;
 import com.xensource.xenapi.VBD;
 import com.xensource.xenapi.VDI;
 import com.xensource.xenapi.VM;
-import com.xensource.xenapi.Types.XenAPIException;
+import org.apache.log4j.Logger;
+import org.apache.xmlrpc.XmlRpcException;
+
+import javax.ejb.Local;
+import java.io.File;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
 
 @Local(value=ServerResource.class)
 public class XcpOssResource extends CitrixResourceBase {
-        private final static Logger s_logger = 
Logger.getLogger(XcpServerResource.class);
+    private final static Logger s_logger = 
Logger.getLogger(XcpOssResource.class);
+    private static final long mem_32m = 33554432L;
+
     @Override
     protected List<File> getPatchFiles() {
         List<File> files = new ArrayList<File>();
@@ -167,4 +166,9 @@ public class XcpOssResource extends CitrixResourceBase {
        }
        return answer;
     }
+
+    @Override
+    protected void setMemory(Connection conn, VM vm, long minMemsize, long 
maxMemsize) throws XmlRpcException, XenAPIException {
+        vm.setMemoryLimits(conn, mem_32m, maxMemsize, minMemsize, maxMemsize);
+    }
 }

Reply via email to