The goal of this series is to use cpuset to manage numa. Currently numa tuning is achieved by libnuma, the disadvantage is numa parameters can not be modified when the domain is running. By using cpuset, we can do this and more: - a new command, numatune, to get/set numa parameters - cpuset can migrate pages to new nodes if a domain's numa nodes is changed when running This is a draft for early reviews. Comments are welcome. TODO: - add --migrate option to numatune - docs for numatune Hu Tao (10): enable cgroup cpuset by default Add functions to set/get cpuset parameters use cpuset to manage numa remove dependence on libnuma new numa parameters add new API virDomain{G,S}etNumaParameters Implement main entries of virDomain{G,S}etNumaParameters Add virDomain{G,S}etNumaParameters support to the remote driver Implement virDomain{G,S}etNumaParameters for the qemu driver add new command numatune to virsh daemon/remote.c | 63 +++++++++ include/libvirt/libvirt.h.in | 23 +++ python/generator.py | 2 + src/conf/domain_conf.c | 35 ++--- src/conf/domain_conf.h | 3 +- src/driver.h | 15 ++ src/libvirt.c | 106 +++++++++++++++ src/libvirt_private.syms | 6 + src/libvirt_public.syms | 6 + src/qemu/qemu.conf | 5 +- src/qemu/qemu_cgroup.c | 37 +++++ src/qemu/qemu_conf.c | 3 +- src/qemu/qemu_driver.c | 307 ++++++++++++++++++++++++++++++++++++++++++ src/qemu/qemu_process.c | 111 --------------- src/remote/remote_driver.c | 50 +++++++ src/remote/remote_protocol.x | 25 ++++- src/remote_protocol-structs | 16 +++ src/util/cgroup.c | 80 +++++++++++ src/util/cgroup.h | 7 + tools/virsh.c | 187 +++++++++++++++++++++++++ 20 files changed, 950 insertions(+), 137 deletions(-) -- 1.7.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list