On Thu, May 17, 2012 at 04:28:52PM +0800, Li Zhang wrote: > ppc64 pseries architecture requires that the cpus > be numbered in a certain way. > According to SMT, if SMT equals 4, 0-3 on core 0, > 4-7 on core 1 and so on. So, depending on how guest > topology has been specified, one cannot assume that > the vcpus will be numbered 0-N. For example, for > smp=2, core=2, threads=1, the two cpus will be 0 and > 4 - one HW thread on each core. libvirt needs to take > into account. What you describe here is a hardware view of the CPUs, which need not be contiguous. libvirt works with a purely linear view of CPU numbers, where everything is contiguous & I always assumed that QEMU's query-cpus command works the same way. > Signed-off-by: Dipankar <dipankar@xxxxxxxxxx> > Signed-off-by: Li Zhang <zhlcindy@xxxxxxxxxxxxxxxxxx> > --- > src/qemu/qemu_monitor_json.c | 7 ------- > 1 file changed, 7 deletions(-) > > diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c > index e1f5453..aee5265 100644 > --- a/src/qemu/qemu_monitor_json.c > +++ b/src/qemu/qemu_monitor_json.c > @@ -1231,13 +1231,6 @@ qemuMonitorJSONExtractCPUInfo(virJSONValuePtr reply, > goto cleanup; > } > > - if (cpu != i) { > - qemuReportError(VIR_ERR_INTERNAL_ERROR, > - _("unexpected cpu index %d expecting %d"), > - i, cpu); > - goto cleanup; > - } > - > threads[i] = thread; > } Can you provide the full output of the 'query-cpus' command on the guest you have. Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list