[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH v4 0/5] xen: support per-cpupool scheduling granularity
Support scheduling granularity per cpupool. Setting the granularity is done via hypfs, which needed to gain dynamical entries for that purpose. Apart from the hypfs related additional functionality the main change for cpupools was the support for moving a domain to a new granularity, as this requires to modify the scheduling unit/vcpu relationship. I have tried to do the hypfs modifications in a rather generic way in order to be able to use the same infrastructure in other cases, too (e.g. for per-domain entries). The complete series has been tested by creating cpupools with different granularities and moving busy and idle domains between those. Changes in V4: - Patches 1-3 of V3 have been committed - Addressed all comments Changes in V3: - Patches 1-6 and 8-11 of V2 have been committed already - New patch 2 - Addressed all comments - Added a data pointer to struct hypfs_dyndir Changes in V2: - Added several new patches, especially for some further cleanups in cpupool.c. - Completely reworked the locking scheme with dynamical directories: locking of resources (cpupools in this series) is now done via new callbacks which are called when traversing the hypfs tree. This removes the need to add locking to each hypfs related cpupool function and it ensures data integrity across multiple callbacks. - Reordered the first few patches in order to have already acked patches in pure cleanup patches first. - Addressed several comments. Juergen Gross (5): xen/hypfs: support dynamic hypfs nodes xen/hypfs: add support for id-based dynamic directories xen/cpupool: add cpupool directories xen/cpupool: add scheduling granularity entry to cpupool entries xen/cpupool: make per-cpupool sched-gran hypfs node writable docs/misc/hypfs-paths.pandoc | 16 +++ xen/common/hypfs.c | 141 ++++++++++++++++++++ xen/common/sched/cpupool.c | 240 +++++++++++++++++++++++++++++++++-- xen/include/xen/hypfs.h | 47 +++++-- 4 files changed, 422 insertions(+), 22 deletions(-) -- 2.26.2
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |