[libvirt] [PATCH 1/8] latency: Define new public API and structure
Daniel Veillard
veillard at redhat.com
Tue Sep 6 03:21:46 UTC 2011
On Mon, Sep 05, 2011 at 04:38:28PM +0800, Osier Yang wrote:
> ---
> include/libvirt/libvirt.h.in | 84 ++++++++++++++++++++++++++++++++++++++++++
> src/libvirt_public.syms | 1 +
> 2 files changed, 85 insertions(+), 0 deletions(-)
>
> diff --git a/include/libvirt/libvirt.h.in b/include/libvirt/libvirt.h.in
> index 8864865..735ea94 100644
> --- a/include/libvirt/libvirt.h.in
> +++ b/include/libvirt/libvirt.h.in
> @@ -574,6 +574,85 @@ struct _virDomainBlockStats {
> */
> typedef virDomainBlockStatsStruct *virDomainBlockStatsPtr;
>
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_FIELD_LENGTH:
> + *
> + * Macro providing the field length of virDomainBlockStatsFlagsStruct
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_FIELD_LENGTH 80
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_READ_BYTES:
> + *
> + * Macro represents the total number of read bytes of the
> + * block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_READ_BYTES "rd_bytes"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_READ_REQ:
> + *
> + * Macro represents the total read requests of the
> + * block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_READ_REQ "rd_operations"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_READ_TOTAL_TIMES:
> + *
> + * Macro represents the total time spend on cache reads in
> + * nano-seconds of the block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_READ_TOTAL_TIMES "rd_total_times"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_WRITE_BYTES:
> + *
> + * Macro represents the total number of write bytes of the
> + * block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_WRITE_BYTES "wr_bytes"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_WRITE_REQ:
> + *
> + * Macro represents the total write requests of the
> + * block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_WRITE_REQ "wr_operations"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_WRITE_TOTAL_TIMES:
> + *
> + * Macro represents the total time spend on cache writes in
> + * nano-seconds of the block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_WRITE_TOTAL_TIMES "wr_total_times"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_FLUSH_REQ:
> + *
> + * Macro represents the total flush requests of the
> + * block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_FLUSH_REQ "flush_operations"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_FLUSH_TOTAL_TIMES:
> + *
> + * Macro represents the total time spend on cache flushing in
> + * nano-seconds of the block device.
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_FLUSH_TOTAL_TIMES "flush_total_times"
> +
> +/**
> + * VIR_DOMAIN_BLOCK_STATS_ERRS:
> + *
> + * In Xen this returns the mysterious 'oo_req'
> + */
> +#define VIR_DOMAIN_BLOCK_STATS_ERRS "errs"
> +
> /**
> * virDomainInterfaceStats:
> *
> @@ -1178,6 +1257,11 @@ int virDomainBlockStats (virDomainPtr dom,
> const char *path,
> virDomainBlockStatsPtr stats,
> size_t size);
> +int virDomainBlockStatsFlags (virDomainPtr dom,
> + const char *path,
> + virTypedParameterPtr params,
> + int *nparams,
> + unsigned int flags);
> int virDomainInterfaceStats (virDomainPtr dom,
> const char *path,
> virDomainInterfaceStatsPtr stats,
> diff --git a/src/libvirt_public.syms b/src/libvirt_public.syms
> index 169c3ee..dc5a80b 100644
> --- a/src/libvirt_public.syms
> +++ b/src/libvirt_public.syms
> @@ -483,6 +483,7 @@ LIBVIRT_0.9.4 {
> LIBVIRT_0.9.5 {
> global:
> virDomainMigrateGetMaxSpeed;
> + virDomainBlockStatsFlags;
> } LIBVIRT_0.9.4;
>
> # .... define new API here using predicted next version number ....
> --
> 1.7.6
ACK now, thanks !
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