Skip to content

Cpupools

Juergen Gross xen-devel 1 version Applied

Status from this message: Applied. Thanks.

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 of 6 patches 3 repliesApplied

3 of 6 patches are in this archive. The cover letter announces 6.

Patches in v1 Applied

#Subject and filesSizeRepliesApplied
1/6Cpupools: hypervisor partxen/arch/x86/domain_build.c xen/arch/x86/setup.c xen/arch/x86/smpboot.c +11 more+1572 -3800 replies
2/6Cpupools: libxc parttools/libxc/Makefile tools/libxc/xc_cpupool.c tools/libxc/xc_domain.c +2 more+264 -00 replies
6/6Cpupools: documentation changesdocs/xen-api/coversheet.tex docs/xen-api/revision-history.tex docs/xen-api/xenapi-coversheet.tex +2 more+1364 -30 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [Patch 0/6] Cpupools

Round 2 for cpupools patches.

Changes from 1st version:
- create all domains in Pool-0, move to specific pool afterwards
- don't use cpupool_lock for cpu add/remove. Races with hot swapping cpus are avoided by locking cpus to Pool-0 if necessary

libxl patches will be sent soon, I'm still working on them.

The physical cpus of a server are grouped in cpu-pools. Each physical CPU is assigned at most to one cpu-pool. Domains are each restricted to a single cpu-pool. Scheduling does not cross cpu-pool boundaries, so each cpu-pool has an own scheduler.

The cpu-pool of the domain Dom0 will be Pool-0, at boot-time we have to create this cpu-pool implicitly.

The creation of a cpu-pool is similar to the creation of a domain. In a first step the attributes of a cpu-pool have to be defined, in the second step the cpu-pool will be activated (started) by assigning the resources (CPUs) and initializing the scheduler. An activated cpu-pool owns at least one physical CPU.

A physical CPU may be removed from an activated cpu-pool. Further CPUs may be assigned to the cpu-pool. The CPU may be assigned to a cpu-pool only if that CPU is free (not assigned to any other activated cpu-pool). The free CPUs are internally managed.

The poolname will be added as an additional parameter to the configfile of a domain. If no poolname is specified the poolname is defaults to Pool-0. At domain start the domain is added to its cpu-pool, which must be activated.

A started domain can be moved to another activated cpu-pool.

A cpu-pool may be deactivated if there is no active domain assigned to it. A cpu-pool is deactivated by removing the resources (CPUs).

A cpu-pool may be deleted if it is deactivated.

The administration of the cpu-pools is done by xm subcommands.

Patch 1/6: hypervisor support of cpupools
Patch 2/6: support in libxc
Patch 3/6: changes in libxen
Patch 4/6: python stuff (xm, xend)
Patch 5/6: xm-test add-ons for cpupools
Patch 6/6: documentation changes

Juergen

Signature · 5 lines
Juergen Gross                 Principal Developer Operating Systems
TSP ES&S SWE OS6                       Telephone: +49 (0) 89 3222 2967
Fujitsu Technology Solutions              e-mail: [email protected]
Domagkstr. 28                           Internet: ts.fujitsu.com
D-80807 Muenchen                 Company details: ts.fujitsu.com/imprint.html