
Hi Dan & Daniel, Daniel Veillard wrote:
The form of cpumap argument in op_pincpu method on xend change by following a patch. http://xenbits.xensource.com/xen-unstable.hg?rev/a63d20d7a941
xenDaemonDomainPinCpu() sends the string for cpumap argument like python's list style now. This patch is following the change of cpumap argument. "[0,1,2]" ---> "0,1,2" If we switch to the new format, does that still work with older XenD ?
Yup I had the same question when reading the description, if not we need to make that conditional on xen version.
The older xend's behavior is not affected change the cpumap format, because the older xend works incorrectly by the xend's cpumap format bug. The new xend(no cpumap format bug) and the current libvirt cpumap format occurred error. The new xend and the new libvirt cpumap format works fine. Therefor, I think that we don't need to make that conditional on xen version. The test result of verifying the xend and the cpumap format is described as follows. * xen-unstable Set cpu affinity used by xenDaemonDomainPinCpu(): # set xenHypervisorPinVcpu() always return -1 for test | libvirt | libvirt | current format | new format +----------+----------+----------+---------- | old xend | new xend | old xend | new xend ---------+----------+----------+----------+---------- inactive | (1) | (3) | (5) | (7) domain | NG1 | NG2 | NG1 | OK ---------+----------+----------+----------+---------- active | (2) | (4) | (6) | (8) domain | NG1 | NG2 | NG1 | OK old xend: before xen-unstable changeset 19579 new xend: after xen-unstable changeset 19580 OK : virsh command end normaly and set cpu affinity. NG1: virsh command end normaly, but can't set cpu affinity. NG2: virsh command end with show error msg. Result (1),(2) is the same as result (5),(6). * F8 Set cpu affinity used by xenDaemonDomainPinCpu(): # set xenHypervisorPinVcpu() always return -1 for test | libvirt | libvirt | current format | new format ---------+-------------------+------------------ inactive | (1) | (3) domain | NG2 | NG2 ---------+-------------------+------------------ active | (2) | (4) domain | NG1 | NG1 NG1: virsh command end normaly, but can't set cpu affinity. NG2: virsh command end with show error msg. Result (1),(2) is the same as result (3),(4). * RHEL5.3 Set cpu affinity used by xenDaemonDomainPinCpu(): # set xenHypervisorPinVcpu() and XmDomainPinVcpu() # always return -1 for test | libvirt | libvirt | current format | new format ---------+-------------------+------------------ inactive | (1) | (3) domain | NG2 | NG2 ---------+-------------------+------------------ active | (2) | (4) domain | NG1 | NG1 NG1: virsh command end normaly, but can't set cpu affinity. NG2: virsh command end with show error msg. Result (1),(2) is the same as result (3),(4). # The each command log is attached. Thakns, Tatsuro Enokura