mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 10:11:27 +01:00
This patch introduces an array of libxl_bitmap called "vcpu_hard_affinity" in libxl IDL to preserve VCPU to PCPU mapping. This is necessary for libxl to preserve all information to construct a domain. The array accommodates at most max_vcpus elements, each containing the affinity of the respective VCPU. If less than max_vcpus bitmaps are present, the VCPUs associated to the missing elements will just stay with their default affinity (they'll be free to execute on every PCPU). In case both this new field, and the already existing cpumap field are used, the content of the array will override what's set in cpumap. (In xl, we make sure that this never happens in xl, by using only one of the two at any given time.) The proper macro to mark the API change (called LIBXL_HAVE_BUILDINFO_VCPU_AFFINITY_ARRAYS) is added but it is commented. It will be uncommented by the patch in the series that completes the process, by adding the "vcpu_soft_affinity" array. This is because, after all, these two fields are being added sort-of together, and are very very similar, in both meaning and usage, so it makes sense for them to share the same marker. This patch was originally part of Wei's series about pushing as much information as possible on domain configuration in libxl, rather than xl. See here, for more details: http://lists.xen.org/archives/html/xen-devel/2014-06/msg01026.html http://lists.xen.org/archives/html/xen-devel/2014-06/msg01031.html Signed-off-by: Wei Liu <wei.liu2@citrix.com> Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com>