
On 02/27/13 11:42, Peter Krempa wrote:
Qemu's implementation of virtio RNG supports rate limiting of the entropy used. This patch exposes the option to tune this functionality.
This patch is based on qemu commit 904d6f588063fb5ad2b61998acdf1e73fb4
The rate limiting is exported in the XML as: <devices> ... <rng model='virtio'> <rate period='1234'>4321</rate> <backend model='random'/> </rng> ... ---
Notes: Version 4: - Reword docs - state it is available since 1.0.4 as the tree is frozen and this was actually never acked before Version 3: - State the time unit in docs Version 2: - Qemu uses bytes/period, adapt the value according to that
docs/formatdomain.html.in | 13 +++++++++++++ docs/schemas/domaincommon.rng | 18 +++++++++++++++++- src/conf/domain_conf.c | 17 +++++++++++++++++ src/conf/domain_conf.h | 2 ++ src/qemu/qemu_command.c | 9 +++++++++ .../qemuxml2argv-virtio-rng-random.args | 2 +- .../qemuxml2argv-virtio-rng-random.xml | 1 + 7 files changed, 60 insertions(+), 2 deletions(-)
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index 1835b39..1c6c73e 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in ... @@ -4302,6 +4303,18 @@ qemu-kvm -net nic,model=? /dev/null <li>'virtio' — supported by qemu and virtio-rng kernel module</li> </ul> </dd> + <dt><code>rate</code></dt> + <dd> + <p> + The optional <code>rate</code> element allows limiting the rate at + which entropy can be consumed from the source. An optional + <code>period</code> attribute specifies the duration of a period in + milliseconds; if omitted, the period is taken as 1000 milliseconds + (1 second). The element contents specify how many bits are permitted + per period. Drivers may enforce a minimum rate, and may round the + rate down to a minimum granularity. + </p>
I forgot to commit this hunk before sending out the patch: diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in index 1c6c73e..6248f83 100644 --- a/docs/formatdomain.html.in +++ b/docs/formatdomain.html.in @@ -4313,6 +4313,7 @@ qemu-kvm -net nic,model=? /dev/null (1 second). The element contents specify how many bits are permitted per period. Drivers may enforce a minimum rate, and may round the rate down to a minimum granularity. + <span class='since'>Since 1.0.4</span> </p> </dd> <dt><code>backend</code></dt>
+ </dd> <dt><code>backend</code></dt> <dd> <p>
Peter