[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v11 0/5] Implement vcpu soft affinity for credit1 (toolstack side, leftover)

Here it comes v11. This posting incorporates all the feedback v10 received. For
doing so, some of the patches changed again.

The main differences from last round are:

 * we are not deprecating cpumap any longer. We stop using it in xl (as using
the arrays is more powerful and allows for some code consolidation), but we are
not throwing warnings or specifying in any header that it should not be used;

 * as a consequence of above, I think it's really better to make sure that
libxl internals only deal with vcpu (hard) affinity in one single way.
Therefore, I implemented something that IanC suggested back at v9 time, i.e.,
if a cpumap is specified and a vcpu_hard_affinity is not, I convert the former
into the latter during libxl__build_info_setdefault(). Note that it makes sense
to do this in patch 04/05 (from a patch split point of view) as it is right in
there that, if not doing such conversion, it may happen that hard and soft
affinity are set with two distinct calls to libxl_vcpu_setaffinity(), which is
something we said we don't want (because we don't like the system to be in a
transient state in between the two calls);

 * in xl, when unifying the parsing of 'cpus="1,5-8"' and 'cpus=[1, 4, 2]', I
reworked the logic a bit, so that now the spurious looking initialization
( =NULL) discussed during v10's review is no longer necessary.

Oh, and this time I compiled the series on both Sid (gcc 4.9) and Wheezy (gcc
4.7)! :-)

Branch available here:

 git://xenbits.xen.org/people/dariof/xen.git  numa/per-vcpu-affinity-v11

Dario Faggioli (5):
      xl: enable getting and setting soft affinity
      xl: move away from the use of cpumap for hard affinity
      xl: move the vcpu affinity parsing in a function
      libxl/xl: make it possible to specify soft-affinity in domain config file
      libxl: automatic NUMA placement affects soft affinity

 docs/man/xl.cfg.pod.5                |   50 ++++++--
 docs/man/xl.pod.1                    |   32 ++++-
 docs/misc/xl-numa-placement.markdown |   14 ++
 tools/libxl/libxl.h                  |    3 
 tools/libxl/libxl_create.c           |   15 ++
 tools/libxl/libxl_dom.c              |   69 +++++++++--
 tools/libxl/libxl_types.idl          |    1 
 tools/libxl/xl_cmdimpl.c             |  208 +++++++++++++++++++++-------------
 tools/libxl/xl_cmdtable.c            |    2 
 9 files changed, 275 insertions(+), 119 deletions(-)

<<This happens because I choose it to happen!>> (Raistlin Majere)
Dario Faggioli, Ph.D, http://about.me/dario.faggioli
Senior Software Engineer, Citrix Systems R&D Ltd., Cambridge (UK)

Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.