On Wed, 14 Nov 2007 04:33:47 -0500 Daniel Veillard wrote:
On Tue, Nov 13, 2007 at 08:24:53PM -0500, beth kon wrote:
> I tested the latest CVS libvirt on a 128-way x3950 and create, define,
> and start appear to work well with various cpusets specified. The only
> thing I noticed was that dumpxml does not grab the cpuset info. I have
> not looked at the code to verify, but is this expected? Maybe you
> discussed this Daniel, but I can't remember at the moment.
Hum, no, that's not normal, I commited this on
But I was hoping it was a solved problem ... I guess we need to debug this !
The string should be given to xend_parse_sexp_desc as the cpus last argument.
That argument should be computed in xenUnifiedDomainDumpXML() where it calls
xenDomainUsedCpus() to get that string.
I belive that the dumpxml grab the cpuset information.
For the active domain, we compute the cpuset information that we get
from Xen.
If all CPU are used, dumpxml does not show the cpuset information,
because no setting of cpuset is the same meaning with all CPU.
If some CPU is pined, dumpxml shows the pined cpuset information.
(just a example)
When pining "1" of PCPU for each VCPU, dumpxml will show the following
cpuset information.
# virsh vcpuinfo 2
VCPU: 0
CPU: 1
State: blocked
CPU time: 5.1s
CPU Affinity: -y
VCPU: 1
CPU: 1
State: blocked
CPU time: 6.7s
CPU Affinity: -y
# virsh dumpxml 2
...
<vcpu cpuset='1'>2</vcpu>
...
For the inactive domain, there are two case for dumpxml.
In case of the xendConfigVersion < 3, we get the cpuset information
from configuration file (i.e. cpus parameter of /etc/xen/config).
In other case, we try to get the cpuset information from Xen.
But we cannot get the information from Xen, so the dumpxml cannot show
the cpuset information for the inactive domain.
Don't you think so ?
Regards,
Saori