mirror of https://gitee.com/openkylin/libvirt.git
domiftune: Add API virDomain{S,G}etInterfaceParameters
The APIs are used to set/get domain's network interface's parameters. Currently supported parameters are bandwidth settings. * include/libvirt/libvirt.h.in: new API and parameters definition * python/generator.py: skip the Python API generation * src/driver.h: add new entry to the driver structure * src/libvirt_public.syms: export symbols
This commit is contained in:
parent
f0293edc3f
commit
85f3493f34
|
@ -645,6 +645,48 @@ typedef virTypedParameter *virTypedParameterPtr;
|
|||
*/
|
||||
#define VIR_DOMAIN_SCHEDULER_SHARES "shares"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_IN_AVERAGE:
|
||||
*
|
||||
* Macro represents the inbound average of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_IN_AVERAGE "inbound.average"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_IN_PEAK:
|
||||
*
|
||||
* Macro represents the inbound peak of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_IN_PEAK "inbound.peak"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_IN_BURST:
|
||||
*
|
||||
* Macro represents the inbound burst of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_IN_BURST "inbound.burst"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_OUT_AVERAGE:
|
||||
*
|
||||
* Macro represents the outbound average of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_OUT_AVERAGE "outbound.average"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_OUT_PEAK:
|
||||
*
|
||||
* Macro represents the outbound peak of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_OUT_PEAK "outbound.peak"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_BANDWIDTH_OUT_BURST:
|
||||
*
|
||||
* Macro represents the outbound burst of NIC bandwidth.
|
||||
*/
|
||||
#define VIR_DOMAIN_BANDWIDTH_OUT_BURST "outbound.burst"
|
||||
|
||||
/*
|
||||
* Fetch scheduler parameters, caller allocates 'params' field of size 'nparams'
|
||||
*/
|
||||
|
@ -1446,6 +1488,14 @@ int virDomainInterfaceStats (virDomainPtr dom,
|
|||
const char *path,
|
||||
virDomainInterfaceStatsPtr stats,
|
||||
size_t size);
|
||||
int virDomainSetInterfaceParameters (virDomainPtr dom,
|
||||
const char *device,
|
||||
virTypedParameterPtr params,
|
||||
int nparams, unsigned int flags);
|
||||
int virDomainGetInterfaceParameters (virDomainPtr dom,
|
||||
const char *device,
|
||||
virTypedParameterPtr params,
|
||||
int *nparams, unsigned int flags);
|
||||
int virDomainMemoryStats (virDomainPtr dom,
|
||||
virDomainMemoryStatPtr stats,
|
||||
unsigned int nr_stats,
|
||||
|
|
|
@ -419,6 +419,8 @@ skip_impl = (
|
|||
'virDomainBlockStatsFlags',
|
||||
'virDomainSetBlockIoTune',
|
||||
'virDomainGetBlockIoTune',
|
||||
'virDomainSetInterfaceParameters',
|
||||
'virDomainGetInterfaceParameters',
|
||||
)
|
||||
|
||||
qemu_skip_impl = (
|
||||
|
|
12
src/driver.h
12
src/driver.h
|
@ -375,6 +375,16 @@ typedef int
|
|||
(virDomainPtr domain,
|
||||
const char *path,
|
||||
struct _virDomainInterfaceStats *stats);
|
||||
typedef int
|
||||
(*virDrvDomainSetInterfaceParameters) (virDomainPtr dom,
|
||||
const char *device,
|
||||
virTypedParameterPtr params,
|
||||
int nparams, unsigned int flags);
|
||||
typedef int
|
||||
(*virDrvDomainGetInterfaceParameters) (virDomainPtr dom,
|
||||
const char *device,
|
||||
virTypedParameterPtr params,
|
||||
int *nparams, unsigned int flags);
|
||||
|
||||
typedef int
|
||||
(*virDrvDomainMemoryStats)
|
||||
|
@ -883,6 +893,8 @@ struct _virDriver {
|
|||
virDrvDomainBlockStats domainBlockStats;
|
||||
virDrvDomainBlockStatsFlags domainBlockStatsFlags;
|
||||
virDrvDomainInterfaceStats domainInterfaceStats;
|
||||
virDrvDomainSetInterfaceParameters domainSetInterfaceParameters;
|
||||
virDrvDomainGetInterfaceParameters domainGetInterfaceParameters;
|
||||
virDrvDomainMemoryStats domainMemoryStats;
|
||||
virDrvDomainBlockPeek domainBlockPeek;
|
||||
virDrvDomainMemoryPeek domainMemoryPeek;
|
||||
|
|
|
@ -512,6 +512,8 @@ LIBVIRT_0.9.9 {
|
|||
global:
|
||||
virDomainGetNumaParameters;
|
||||
virDomainSetNumaParameters;
|
||||
virDomainGetInterfaceParameters;
|
||||
virDomainSetInterfaceParameters;
|
||||
} LIBVIRT_0.9.8;
|
||||
|
||||
# .... define new API here using predicted next version number ....
|
||||
|
|
Loading…
Reference in New Issue