diff options
author | Dario Faggioli <dario.faggioli@citrix.com> | 2012-01-27 19:17:03 +0000 |
---|---|---|
committer | Dario Faggioli <dario.faggioli@citrix.com> | 2012-01-27 19:17:03 +0000 |
commit | c1cdf27925e1bfebf16fe33000509cce5e115df5 (patch) | |
tree | 819d724a000ed3817659ae602e18f4bc655c13ec /tools/libxl/libxl_utils.h | |
parent | 3290f842f7cefdd9d0d43271025d1d945d5e8529 (diff) | |
download | xen-c1cdf27925e1bfebf16fe33000509cce5e115df5.tar.gz xen-c1cdf27925e1bfebf16fe33000509cce5e115df5.tar.bz2 xen-c1cdf27925e1bfebf16fe33000509cce5e115df5.zip |
libxl: allow for specifying the CPU affinity in the config file.
Enable CPU affinity specification in a VM's config file with the
exact syntax `xl vcpu-pin' provides.
Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/libxl/libxl_utils.h')
-rw-r--r-- | tools/libxl/libxl_utils.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/libxl/libxl_utils.h b/tools/libxl/libxl_utils.h index 19ad357d37..845c9925e0 100644 --- a/tools/libxl/libxl_utils.h +++ b/tools/libxl/libxl_utils.h @@ -70,6 +70,18 @@ int libxl_cpumap_alloc(libxl_ctx *ctx, libxl_cpumap *cpumap); int libxl_cpumap_test(libxl_cpumap *cpumap, int cpu); void libxl_cpumap_set(libxl_cpumap *cpumap, int cpu); void libxl_cpumap_reset(libxl_cpumap *cpumap, int cpu); +static inline void libxl_cpumap_set_any(libxl_cpumap *cpumap) +{ + memset(cpumap->map, -1, cpumap->size); +} +static inline void libxl_cpumap_set_none(libxl_cpumap *cpumap) +{ + memset(cpumap->map, 0, cpumap->size); +} +static inline int libxl_cpumap_cpu_valid(libxl_cpumap *cpumap, int cpu) +{ + return cpu >= 0 && cpu < (cpumap->size * 8); +} #define libxl_for_each_cpu(var, map) for (var = 0; var < (map).size * 8; var++) #define libxl_for_each_set_cpu(v, m) for (v = 0; v < (m).size * 8; v++) \ if (libxl_cpumap_test(&(m), v)) |