[libvirt] [PATCHv5 0/9] add command numatune (Re: [PATCHv3 0/8] add command numatune)
Hu Tao
hutao at cn.fujitsu.com
Tue Dec 20 08:27:05 UTC 2011
On Mon, Dec 19, 2011 at 05:39:10PM -0700, Eric Blake wrote:
> On 12/19/2011 10:16 AM, Daniel P. Berrange wrote:
> > On Thu, Dec 15, 2011 at 06:50:14PM +0800, Hu Tao wrote:
> >> This series adds a new command numatune to get/set numatune parameters.
> >>
> >> Besides libnuma, cpuset cgroup parameters are also set according to
> >> numatune parameters. But for now, only cpuset.mems is supported.
> >
> > I've not done a detailed review, but in general I like the design
> > and impl of this series, as compared to the previous v1/v2 posting.
>
> I still think we need a v5, containing my various improvements (which
> I'll post as v4), and addressing these additional concerns:
>
> Is tools/virsh.c allowed to directly use conf/domain_conf.h, or must we
> move the string conversion of numa mode into src/util?
Maybe a later patch to do this because there are a lot of unrelated
type-string conversion codes?
>
> Where do we guarantee that the user cannot specify more cpus than the
> host has available? In other words, 'virsh numatune dom --nodeset 0-15'
> should probably fail on a host that doesn't have 16 processors.
I think it's fine to set nodeset in domain's xml to any value valid the
user wants. But in the --live case, setting a nodeset exceeds the real
num of cpus should fail.
>
> What about my concern that altering the nodeset of a running domain
> needs to affect dumpxml for that domain?
done.
>
> Also, my testing revealed that the patch series is buggy, but I haven't
> yet debugged why (probably something wrong with the manual rpc code)
>
> # tools/virsh numatune dom
> error: Unable to get numa parameters
> error: Unable to encode message payload
The bug is in the rpc generating code which unexpectedly removes a
line of code that shouldn't be. More details see patch 9.
Eric Blake (1):
Fix a bug related to VIR_TYPED_PARAM_STRING
Hu Tao (8):
virsh: add support to VIR_TYPED_PARAM_STRING in vshGetTypedParamValue
Add functions to set/get cgroup cpuset parameters
use cpuset to manage numa
add new API 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
rpc: removes the removal of unused variable i
daemon/remote.c | 85 ++++++++++++--
include/libvirt/libvirt.h.in | 39 ++++++
python/generator.py | 2 +
src/conf/domain_conf.h | 8 --
src/driver.h | 15 +++
src/libvirt.c | 129 ++++++++++++++++++++
src/libvirt_private.syms | 2 +
src/libvirt_public.syms | 6 +
src/qemu/qemu_cgroup.c | 19 +++
src/qemu/qemu_driver.c | 273 ++++++++++++++++++++++++++++++++++++++++++
src/remote/remote_driver.c | 50 ++++++++
src/remote/remote_protocol.x | 24 ++++-
src/remote_protocol-structs | 22 ++++
src/rpc/genprotocol.pl | 2 +-
src/util/cgroup.c | 32 +++++
src/util/cgroup.h | 3 +
tools/virsh.c | 163 +++++++++++++++++++++++++
tools/virsh.pod | 19 +++
18 files changed, 872 insertions(+), 21 deletions(-)
--
1.7.4.4
More information about the libvir-list
mailing list