Index: xend_internal.c =================================================================== RCS file: /data/cvs/libvirt/src/xend_internal.c,v retrieving revision 1.151 diff -u -p -r1.151 xend_internal.c --- xend_internal.c 22 Oct 2007 20:28:55 -0000 1.151 +++ xend_internal.c 25 Oct 2007 08:18:59 -0000 @@ -1440,6 +1440,11 @@ xend_parse_sexp_desc(virConnectPtr conn, cur_mem); virBufferVSprintf(&buf, " %d\n", sexpr_int(root, "domain/vcpus")); + /* TODO if need to output the cpus values, + * - parse the cpus values if xend exports + * or + * - analyze the cpus values extracted by xenDaemonDomainGetVcpus + */ tmp = sexpr_node(root, "domain/on_poweroff"); if (tmp != NULL) virBufferVSprintf(&buf, " %s\n", tmp); Index: xm_internal.c =================================================================== RCS file: /data/cvs/libvirt/src/xm_internal.c,v retrieving revision 1.41 diff -u -p -r1.41 xm_internal.c --- xm_internal.c 10 Oct 2007 17:55:38 -0000 1.41 +++ xm_internal.c 25 Oct 2007 08:18:59 -0000 @@ -660,11 +660,12 @@ char *xenXMDomainFormatXML(virConnectPtr val = MIN_XEN_GUEST_SIZE * 2; virBufferVSprintf(buf, " %ld\n", val * 1024); - + virBufferVSprintf(buf, " %ld\n", val); - + virBufferVSprintf(buf, ">%ld\n", val); if (xenXMConfigGetString(conf, "on_poweroff", &str) < 0) str = "destroy"; @@ -1821,6 +1822,11 @@ virConfPtr xenXMParseXMLToConfig(virConn "cannot set vcpus config parameter") < 0) goto error; + if (xenXMConfigSetStringFromXPath(conn, conf, ctxt, "cpus", + "string(/domain/vcpu/@cpuset)", 1, + "cannot set the cpuset parameter") < 0) + goto error; + obj = xmlXPathEval(BAD_CAST "string(/domain/os/type)", ctxt); if ((obj != NULL) && (obj->type == XPATH_STRING) && (obj->stringval != NULL) && !strcmp((char*)obj->stringval, "hvm"))