mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-12-22 13:45:38 +00:00
qemu: Add entry for balloon stat stat-disk-caches
QEMU commit bf1e7140e adds reporting of new balloon statistic to QEMU 2.12. Value represents the amount of memory that can be quickly reclaimed without additional I/O. Let's add that too. Signed-off-by: Tomáš Golembiovský <tgolembi@redhat.com> Reviewed-by: John Ferlan <jferlan@redhat.com>
This commit is contained in:
parent
74b5634b77
commit
aee0465508
@ -628,11 +628,18 @@ typedef enum {
|
|||||||
/* Timestamp of the last update of statistics, in seconds. */
|
/* Timestamp of the last update of statistics, in seconds. */
|
||||||
VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE = 9,
|
VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE = 9,
|
||||||
|
|
||||||
|
/*
|
||||||
|
* The amount of memory, that can be quickly reclaimed without
|
||||||
|
* additional I/O (in kB). Typically these pages are used for caching files
|
||||||
|
* from disk.
|
||||||
|
*/
|
||||||
|
VIR_DOMAIN_MEMORY_STAT_DISK_CACHES = 10,
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* The number of statistics supported by this version of the interface.
|
* The number of statistics supported by this version of the interface.
|
||||||
* To add new statistics, add them to the enum and increase this value.
|
* To add new statistics, add them to the enum and increase this value.
|
||||||
*/
|
*/
|
||||||
VIR_DOMAIN_MEMORY_STAT_NR = 10,
|
VIR_DOMAIN_MEMORY_STAT_NR = 11,
|
||||||
|
|
||||||
# ifdef VIR_ENUM_SENTINELS
|
# ifdef VIR_ENUM_SENTINELS
|
||||||
VIR_DOMAIN_MEMORY_STAT_LAST = VIR_DOMAIN_MEMORY_STAT_NR
|
VIR_DOMAIN_MEMORY_STAT_LAST = VIR_DOMAIN_MEMORY_STAT_NR
|
||||||
|
@ -5732,6 +5732,9 @@ virDomainGetInterfaceParameters(virDomainPtr domain,
|
|||||||
* Current balloon value (in kb).
|
* Current balloon value (in kb).
|
||||||
* VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE
|
* VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE
|
||||||
* Timestamp of the last statistic
|
* Timestamp of the last statistic
|
||||||
|
* VIR_DOMAIN_MEMORY_STAT_DISK_CACHES
|
||||||
|
* Memory that can be reclaimed without additional I/O, typically disk
|
||||||
|
* caches (in kb).
|
||||||
*
|
*
|
||||||
* Returns: The number of stats provided or -1 in case of failure.
|
* Returns: The number of stats provided or -1 in case of failure.
|
||||||
*/
|
*/
|
||||||
|
@ -19798,6 +19798,7 @@ qemuDomainGetStatsBalloon(virQEMUDriverPtr driver,
|
|||||||
STORE_MEM_RECORD(RSS, "rss")
|
STORE_MEM_RECORD(RSS, "rss")
|
||||||
STORE_MEM_RECORD(LAST_UPDATE, "last-update")
|
STORE_MEM_RECORD(LAST_UPDATE, "last-update")
|
||||||
STORE_MEM_RECORD(USABLE, "usable")
|
STORE_MEM_RECORD(USABLE, "usable")
|
||||||
|
STORE_MEM_RECORD(DISK_CACHES, "disk_caches")
|
||||||
}
|
}
|
||||||
|
|
||||||
#undef STORE_MEM_RECORD
|
#undef STORE_MEM_RECORD
|
||||||
|
@ -2081,6 +2081,8 @@ int qemuMonitorJSONGetMemoryStats(qemuMonitorPtr mon,
|
|||||||
VIR_DOMAIN_MEMORY_STAT_USABLE, 1024);
|
VIR_DOMAIN_MEMORY_STAT_USABLE, 1024);
|
||||||
GET_BALLOON_STATS(data, "last-update",
|
GET_BALLOON_STATS(data, "last-update",
|
||||||
VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE, 1);
|
VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE, 1);
|
||||||
|
GET_BALLOON_STATS(statsdata, "stat-disk-caches",
|
||||||
|
VIR_DOMAIN_MEMORY_STAT_DISK_CACHES, 1024);
|
||||||
ret = got;
|
ret = got;
|
||||||
cleanup:
|
cleanup:
|
||||||
virJSONValueFree(cmd);
|
virJSONValueFree(cmd);
|
||||||
|
@ -364,6 +364,8 @@ cmdDomMemStat(vshControl *ctl, const vshCmd *cmd)
|
|||||||
vshPrint(ctl, "rss %llu\n", stats[i].val);
|
vshPrint(ctl, "rss %llu\n", stats[i].val);
|
||||||
if (stats[i].tag == VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE)
|
if (stats[i].tag == VIR_DOMAIN_MEMORY_STAT_LAST_UPDATE)
|
||||||
vshPrint(ctl, "last_update %llu\n", stats[i].val);
|
vshPrint(ctl, "last_update %llu\n", stats[i].val);
|
||||||
|
if (stats[i].tag == VIR_DOMAIN_MEMORY_STAT_DISK_CACHES)
|
||||||
|
vshPrint(ctl, "disk_caches %llu\n", stats[i].val);
|
||||||
}
|
}
|
||||||
|
|
||||||
ret = true;
|
ret = true;
|
||||||
|
@ -924,6 +924,8 @@ B<Explanation of fields>:
|
|||||||
usable - The amount of memory which can be reclaimed by balloon
|
usable - The amount of memory which can be reclaimed by balloon
|
||||||
without causing host swapping (in KiB)
|
without causing host swapping (in KiB)
|
||||||
last-update - Timestamp of the last update of statistics (in seconds)
|
last-update - Timestamp of the last update of statistics (in seconds)
|
||||||
|
disk_caches - The amount of memory that can be reclaimed without
|
||||||
|
additional I/O, typically disk caches (in KiB)
|
||||||
|
|
||||||
For QEMU/KVM with a memory balloon, setting the optional I<--period> to a
|
For QEMU/KVM with a memory balloon, setting the optional I<--period> to a
|
||||||
value larger than 0 in seconds will allow the balloon driver to return
|
value larger than 0 in seconds will allow the balloon driver to return
|
||||||
@ -1030,6 +1032,9 @@ I<--balloon> returns:
|
|||||||
balloon without causing host swapping (in KiB)
|
balloon without causing host swapping (in KiB)
|
||||||
"balloon.last-update" - timestamp of the last update of statistics
|
"balloon.last-update" - timestamp of the last update of statistics
|
||||||
(in seconds)
|
(in seconds)
|
||||||
|
"balloon.disk_caches " - the amount of memory that can be reclaimed
|
||||||
|
without additional I/O, typically disk
|
||||||
|
caches (in KiB)
|
||||||
|
|
||||||
I<--vcpu> returns:
|
I<--vcpu> returns:
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user