[libvirt] [PATCH v2.1 20/21] new interface to control emulator_period/emulator_quota
Daniel Veillard
veillard at redhat.com
Wed Aug 22 09:02:55 UTC 2012
On Tue, Aug 21, 2012 at 05:18:43PM +0800, Hu Tao wrote:
> This patch adds two macros: VIR_DOMAIN_SCHEDULER_EMULATOR_PERIOD,
> VIR_DOMAIN_SCHEDULER_EMULATOR_QUOTA for controlling cpu bandwidth
> for emulator activities not tied to vcpus
> ---
> include/libvirt/libvirt.h.in | 24 +++++++++++++++++++++---
> tools/virsh.pod | 11 ++++++-----
> 2 files changed, 27 insertions(+), 8 deletions(-)
>
> diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
> index 43774eb..cfe5047 100644
> --- a/include/libvirt/libvirt.h.in
> +++ b/include/libvirt/libvirt.h.in
> @@ -679,19 +679,37 @@ typedef virTypedParameter *virTypedParameterPtr;
> * VIR_DOMAIN_SCHEDULER_VCPU_PERIOD:
> *
> * Macro represents the enforcement period for a quota, in microseconds,
> - * when using the posix scheduler, as a ullong.
> + * for vcpus only, when using the posix scheduler, as a ullong.
> */
> #define VIR_DOMAIN_SCHEDULER_VCPU_PERIOD "vcpu_period"
>
> /**
> * VIR_DOMAIN_SCHEDULER_VCPU_QUOTA:
> *
> - * Macro represents the maximum bandwidth to be used within a period,
> - * when using the posix scheduler, as an llong.
> + * Macro represents the maximum bandwidth to be used within a period for
> + * vcpus only, when using the posix scheduler, as an llong.
> */
> #define VIR_DOMAIN_SCHEDULER_VCPU_QUOTA "vcpu_quota"
>
> /**
> + * VIR_DOMAIN_SCHEDULER_EMULATOR_PERIOD:
> + *
> + * Macro represents the enforcement period for a quota in microseconds,
> + * when using the posix scheduler, for all emulator activity not tied to
> + * vcpus, as a ullong.
> + */
> +#define VIR_DOMAIN_SCHEDULER_EMULATOR_PERIOD "emulator_period"
> +
> +/**
> + * VIR_DOMAIN_SCHEDULER_EMULATOR_QUOTA:
> + *
> + * Macro represents the maximum bandwidth to be used within a period for
> + * all emulator activity not tied to vcpus, when using the posix scheduler,
> + * as an llong.
> + */
> +#define VIR_DOMAIN_SCHEDULER_EMULATOR_QUOTA "emulator_quota"
> +
> +/**
> * VIR_DOMAIN_SCHEDULER_WEIGHT:
> *
> * Macro represents the relative weight, when using the credit
> diff --git a/tools/virsh.pod b/tools/virsh.pod
> index ec3c331..e932d7c 100644
> --- a/tools/virsh.pod
> +++ b/tools/virsh.pod
> @@ -1202,7 +1202,8 @@ available for each hypervisor are:
>
> LXC (posix scheduler) : cpu_shares
>
> -QEMU/KVM (posix scheduler): cpu_shares, vcpu_period, vcpu_quota
> +QEMU/KVM (posix scheduler): cpu_shares, vcpu_period, vcpu_quota,
> +emulator_period, emulator_quota
>
> Xen (credit scheduler): weight, cap
>
> @@ -1220,10 +1221,10 @@ values 0 and 1 are automatically converted to a minimal value of 2.
> B<Note>: The weight and cap parameters are defined only for the
> XEN_CREDIT scheduler and are now I<DEPRECATED>.
>
> -B<Note>: The vcpu_period parameter has a valid value range of 1000-1000000 or
> -0, and the vcpu_quota parameter has a valid value range of
> -1000-18446744073709551 or less than 0. The value 0 for either parameter is
> -the same as not specifying that parameter.
> +B<Note>: The vcpu_period/emulator_period parameters have a valid value range
> +of 1000-1000000 or 0, and the vcpu_quota/emulator_quota parameters have a
> +valid value range of 1000-18446744073709551 or less than 0. The value 0 for
> +either parameter is the same as not specifying that parameter.
>
> =item B<screenshot> I<domain> [I<imagefilepath>] [I<--screen> B<screenID>]
ACK, normal to expose and document those at the API level.
Daniel
--
Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/
daniel at veillard.com | Rpmfind RPM search engine http://rpmfind.net/
http://veillard.com/ | virtualization library http://libvirt.org/
More information about the libvir-list
mailing list