]>
Commit | Line | Data |
---|---|---|
96f4a076 DM |
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 | |
4 | 16:49:59 +0100 | |
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 | |
23 | -0500 | |
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 | |
904a90cc | 27 | From: Luiz Capitulino <lcapitulino@redhat.com> |
96f4a076 DM |
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 | |
37 | X-Proxmox-CTCH-Refid: | |
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 | |
49 | MIME-Version: 1.0 | |
50 | Content-Transfer-Encoding: 8bit | |
904a90cc DM |
51 | |
52 | Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com> | |
53 | --- | |
96f4a076 DM |
54 | docs/virtio-balloon-stats.txt | 91 +++++++++++++++++++++++++++++++++++++++++++ |
55 | 1 file changed, 91 insertions(+) | |
904a90cc DM |
56 | create mode 100644 docs/virtio-balloon-stats.txt |
57 | ||
58 | diff --git a/docs/virtio-balloon-stats.txt b/docs/virtio-balloon-stats.txt | |
59 | new file mode 100644 | |
96f4a076 | 60 | index 0000000..990e746 |
904a90cc DM |
61 | --- /dev/null |
62 | +++ b/docs/virtio-balloon-stats.txt | |
96f4a076 | 63 | @@ -0,0 +1,91 @@ |
904a90cc DM |
64 | +virtio balloon memory statistics |
65 | +================================ | |
66 | + | |
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. | |
70 | + | |
71 | +Basically, clients first have to enable polling, then they can query the | |
72 | +available statistics. | |
73 | + | |
74 | +There are two control properties and six memory statistics properties. | |
75 | + | |
76 | +The control properties are: | |
77 | + | |
78 | + o stats-polling-interval: polling time interval in seconds, it can be: | |
79 | + | |
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 | |
82 | + | |
83 | + 0 disables polling. Previous polled statistics are still valid and | |
84 | + can be queried. | |
85 | + | |
86 | + o stats-last-update: last stats update timestamp, in seconds | |
87 | + | |
88 | +The following statistics are available, all values are in bytes: | |
89 | + | |
90 | + o stat-swap-in | |
91 | + o stat-swap-out | |
92 | + o stat-major-faults | |
93 | + o stat-minor-faults | |
94 | + o stat-free-memory | |
95 | + o stat-total-memory | |
96 | + | |
97 | +Also, please note the following: | |
98 | + | |
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 | |
101 | + | |
102 | + - Previously polled statistics remain available even if the timer is | |
103 | + later disabled | |
104 | + | |
96f4a076 DM |
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 | |
108 | + change | |
109 | + | |
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 | |
904a90cc DM |
114 | + |
115 | +Here are a few examples. The virtio-balloon device is assumed to be in the | |
116 | +'/machine/peripheral-anon/device[1]' QOM path. | |
117 | + | |
118 | +Enable polling with 2 seconds interval: | |
119 | + | |
120 | +{ "execute": "qom-set", | |
121 | + "arguments": { "path": "/machine/peripheral-anon/device[1]", | |
122 | + "property": "stats-polling-interval", "value": 2 } } | |
123 | + | |
124 | +{ "return": {} } | |
125 | + | |
126 | +Change polling to 10 seconds: | |
127 | + | |
128 | +{ "execute": "qom-set", | |
129 | + "arguments": { "path": "/machine/peripheral-anon/device[1]", | |
130 | + "property": "stats-polling-interval", "value": 10 } } | |
131 | + | |
132 | +{ "return": {} } | |
133 | + | |
134 | +Get last update timestamp and free memory stat: | |
135 | + | |
136 | +{ "execute": "qom-get", | |
137 | + "arguments": { "path": "/machine/peripheral-anon/device[1]", | |
138 | + "property": "stats-last-update" } } | |
139 | + | |
140 | +{ "return": 1354629634 } | |
141 | + | |
142 | +{ "execute": "qom-get", | |
143 | + "arguments": { "path": "/machine/peripheral-anon/device[1]", | |
144 | + "property": "stat-free-memory" } } | |
145 | + | |
146 | +{ "return": 845115392 } | |
147 | + | |
148 | +Disable polling: | |
149 | + | |
150 | +{ "execute": "qom-set", | |
151 | + "arguments": { "path": "/machine/peripheral-anon/device[1]", | |
152 | + "property": "stats-polling-interval", "value": 0 } } | |
153 | + | |
154 | +{ "return": {} } | |
155 | -- | |
156 | 1.8.0 | |
157 | ||
158 | ||
159 |