在 2022/2/14 18:13, Michal Prívozník 写道:
On 1/28/22 08:35, huangy81(a)chinatelecom.cn wrote:
> From: Hyman Huang(黄勇) <huangy81(a)chinatelecom.cn>
>
> Introduce virDomainDirtyRateCalcFlags and
> virDomainDirtyRateCalcMode to get ready for adding mode
> parameter to qemuDomainStartDirtyRateCalc.
>
> Signed-off-by: Hyman Huang(黄勇) <huangy81(a)chinatelecom.cn>
> ---
> include/libvirt/libvirt-domain.h | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/include/libvirt/libvirt-domain.h b/include/libvirt/libvirt-domain.h
> index 374859f..722a310 100644
> --- a/include/libvirt/libvirt-domain.h
> +++ b/include/libvirt/libvirt-domain.h
> @@ -5257,8 +5257,32 @@ typedef enum {
> # endif
> } virDomainDirtyRateStatus;
>
> +/**
> + * virDomainDirtyRateCalcFlags:
> + *
> + * Flags OR'ed together to provide specific behaviour when calculating dirty
page
> + * rate for a Domain
> + *
> + */
> +typedef enum {
> + VIR_DOMAIN_DIRTYRATE_MODE_PAGE_SAMPLING = 0, /* default mode -
page-sampling */
> + VIR_DOMAIN_DIRTYRATE_MODE_DIRTY_BITMAP = 1 << 0, /* dirty-bitmap mode
*/
> + VIR_DOMAIN_DIRTYRATE_MODE_DIRTY_RING = 1 << 1, /* dirty-ring mode */
> +} virDomainDirtyRateCalcFlags;
> +
> int virDomainStartDirtyRateCalc(virDomainPtr domain,
> int seconds,
> unsigned int flags);
Up until here it's okay.
> +/**
> + * virDomainDirtyRateCalcMode:
> + *
> + * Dirty page rate calculation mode used during measurement.
> + */
> +typedef enum {
> + VIR_DOMAIN_DIRTYRATE_CALC_MODE_PAGE_SAMPLING = 0,
> + VIR_DOMAIN_DIRTYRATE_CALC_MODE_DIRTY_BITMAP,
> + VIR_DOMAIN_DIRTYRATE_CALC_MODE_DIRTY_RING,
> + VIR_DOMAIN_DIRTYRATE_CALC_MODE_LAST,
> +} virDomainDirtyRateCalcMode;
>
> #endif /* LIBVIRT_DOMAIN_H */
But this doesn't belong here. These flags are used only internally. Why
they need to be exposed?
When displaying the dirtyrate info in 'virsh domstats --dirtyrate' api,
we introduce the 'mode' field to show what mode used last calculation.
Whose meanings can be refered to the virDomainDirtyRateCalcMode
Michal
--
Best regard
Hyman Huang(黄勇)