1 From lcapitulino@redhat.com Fri Dec 14 16:49:59 2012
2 Received: from rt.proxmox.com (192.168.2.18) by lisa.maurer-it.com
3 (192.168.2.121) with Microsoft SMTP Server id 14.2.328.9; Fri, 14 Dec 2012
5 Received: from proxmox.maurer-it.com (proxmox.maurer-it.com
6 [192.168.2.110]) by rt.proxmox.com (Postfix) with ESMTP id 25351206E234 for
7 <dietmar@proxmox.com>; Fri, 14 Dec 2012 16:49:59 +0100 (CET)
8 Received: from proxmox.maurer-it.com (localhost.localdomain [127.0.0.1]) by
9 proxmox.maurer-it.com (Proxmox) with ESMTP id 1AAA626A090F for
10 <dietmar@proxmox.com>; Fri, 14 Dec 2012 16:49:59 +0100 (CET)
11 Received-SPF: pass (redhat.com: Sender is authorized to use
12 'lcapitulino@redhat.com' in 'mfrom' identity (mechanism
13 'include:spf-1.redhat.com' matched)) receiver=proxmox.maurer-it.com;
14 identity=mailfrom; envelope-from="lcapitulino@redhat.com";
15 helo=mx1.redhat.com; client-ip=209.132.183.28
16 Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) by
17 proxmox.maurer-it.com (Proxmox) with ESMTP id EAC8B26A0914 for
18 <dietmar@proxmox.com>; Fri, 14 Dec 2012 16:49:57 +0100 (CET)
19 Received: from int-mx09.intmail.prod.int.phx2.redhat.com
20 (int-mx09.intmail.prod.int.phx2.redhat.com [10.5.11.22]) by mx1.redhat.com
21 (8.14.4/8.14.4) with ESMTP id qBEFnnhC005826 (version=TLSv1/SSLv3
22 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Fri, 14 Dec 2012 10:49:49
24 Received: from localhost (ovpn-113-80.phx2.redhat.com [10.3.113.80]) by
25 int-mx09.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id
26 qBEFnlph004684; Fri, 14 Dec 2012 10:49:48 -0500
27 From: Luiz Capitulino <lcapitulino@redhat.com>
28 To: <qemu-devel@nongnu.org>
29 CC: <eblake@redhat.com>, <aliguori@us.ibm.com>, <agl@us.ibm.com>,
30 <mdroth@linux.vnet.ibm.com>, <dietmar@proxmox.com>
31 Subject: [PATCH 3/3] docs: document virtio-balloon stats
32 Date: Fri, 14 Dec 2012 13:49:42 -0200
33 Message-ID: <1355500182-12743-4-git-send-email-lcapitulino@redhat.com>
34 In-Reply-To: <1355500182-12743-1-git-send-email-lcapitulino@redhat.com>
35 References: <1355500182-12743-1-git-send-email-lcapitulino@redhat.com>
36 X-Scanned-By: MIMEDefang 2.68 on 10.5.11.22
38 str=0001.0A0C0203.50CB4AA6.0198:SCFSTAT2484459,ss=1,re=-4.000,recu=0.000,reip=0.000,cl=1,cld=1,fgs=0
39 x-proxmoxspam-level: Spam detection results: 0 AWL
40 -0.199 From: address is in the auto white-list RCVD_IN_DNSWL_HI
41 -5 Sender listed at http://www.dnswl.org/, high trust SPF_HELO_PASS
42 -0.001 SPF: HELO matches SPF record SPF_PASS -0.001 SPF:
43 sender matches SPF record T_RP_MATCHES_RCVD -0.01 Envelope sender
44 domain matches handover relay domain
45 Content-Type: text/plain
46 Return-Path: lcapitulino@redhat.com
47 X-MS-Exchange-Organization-AuthSource: lisa.maurer-it.com
48 X-MS-Exchange-Organization-AuthAs: Anonymous
50 Content-Transfer-Encoding: 8bit
52 Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
54 docs/virtio-balloon-stats.txt | 91 +++++++++++++++++++++++++++++++++++++++++++
55 1 file changed, 91 insertions(+)
56 create mode 100644 docs/virtio-balloon-stats.txt
58 diff --git a/docs/virtio-balloon-stats.txt b/docs/virtio-balloon-stats.txt
60 index 0000000..990e746
62 +++ b/docs/virtio-balloon-stats.txt
64 +virtio balloon memory statistics
65 +================================
67 +The virtio balloon driver supports guest memory statistics reporting. These
68 +statistics are available to QEMU users as QOM (QEMU Object Model) device
69 +properties via a polling mechanism.
71 +Basically, clients first have to enable polling, then they can query the
72 +available statistics.
74 +There are two control properties and six memory statistics properties.
76 +The control properties are:
78 + o stats-polling-interval: polling time interval in seconds, it can be:
80 + > 0 enables polling in the specified interval. If polling is already
81 + enabled, the polling time interval will be changed to the new value
83 + 0 disables polling. Previous polled statistics are still valid and
86 + o stats-last-update: last stats update timestamp, in seconds
88 +The following statistics are available, all values are in bytes:
97 +Also, please note the following:
99 + - If a statistic is queried before the timer is enabled or if the guest
100 + doesn't support a particular statistic, an error will be returned
102 + - Previously polled statistics remain available even if the timer is
105 + - Polling can be enabled even if the guest doesn't support memory
106 + statistics or its balloon driver hasn't been loaded. Applications
107 + can check this condition by checking that stats-last-update doesn't
110 + - The polling timer is only re-armed when the guest responds to the
111 + statistics request. This means that if a (buggy) guest doesn't
112 + ever respond to the request the timer will never be re-armed,
113 + which has the same effect as disabling polling
115 +Here are a few examples. The virtio-balloon device is assumed to be in the
116 +'/machine/peripheral-anon/device[1]' QOM path.
118 +Enable polling with 2 seconds interval:
120 +{ "execute": "qom-set",
121 + "arguments": { "path": "/machine/peripheral-anon/device[1]",
122 + "property": "stats-polling-interval", "value": 2 } }
126 +Change polling to 10 seconds:
128 +{ "execute": "qom-set",
129 + "arguments": { "path": "/machine/peripheral-anon/device[1]",
130 + "property": "stats-polling-interval", "value": 10 } }
134 +Get last update timestamp and free memory stat:
136 +{ "execute": "qom-get",
137 + "arguments": { "path": "/machine/peripheral-anon/device[1]",
138 + "property": "stats-last-update" } }
140 +{ "return": 1354629634 }
142 +{ "execute": "qom-get",
143 + "arguments": { "path": "/machine/peripheral-anon/device[1]",
144 + "property": "stat-free-memory" } }
146 +{ "return": 845115392 }
150 +{ "execute": "qom-set",
151 + "arguments": { "path": "/machine/peripheral-anon/device[1]",
152 + "property": "stats-polling-interval", "value": 0 } }