On 1/28/22 08:35, huangy81@xxxxxxxxxxxxxxx wrote: > From: Hyman Huang(黄勇) <huangy81@xxxxxxxxxxxxxxx> > > Introduce virDomainDirtyRateCalcFlags and > virDomainDirtyRateCalcMode to get ready for adding mode > parameter to qemuDomainStartDirtyRateCalc. > > Signed-off-by: Hyman Huang(黄勇) <huangy81@xxxxxxxxxxxxxxx> > --- > 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? Michal