[libvirt] [PATCH 3/7] qemu: Implement builtin rng backend
Peter Krempa
pkrempa at redhat.com
Mon Jan 6 10:11:01 UTC 2020
On Wed, Jan 01, 2020 at 13:06:33 +0800, Han Han wrote:
> Since v4.2-rc0, QEMU introduced a builtin rng backend that uses
> getrandom() syscall to generate random. Add it to libvirt with the
> backend model 'builtin'.
>
> https://bugzilla.redhat.com/show_bug.cgi?id=1785091
>
> Signed-off-by: Han Han <hhan at redhat.com>
> ---
> src/conf/domain_audit.c | 2 ++
> src/conf/domain_conf.c | 9 +++++++++
> src/conf/domain_conf.h | 1 +
> src/qemu/qemu_command.c | 15 +++++++++++++++
> src/qemu/qemu_domain.c | 3 +++
> 5 files changed, 30 insertions(+)
[...]
> diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
> index a8137b3a..d372d289 100644
> --- a/src/qemu/qemu_command.c
> +++ b/src/qemu/qemu_command.c
[...]
> @@ -5640,6 +5641,20 @@ qemuBuildRNGBackendProps(virDomainRNGDefPtr rng,
>
> break;
>
> + case VIR_DOMAIN_RNG_BACKEND_BUILTIN:
> + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_OBJECT_RNG_BUILTIN)) {
> + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
> + _("this qemu doesn't support the rng-builtin "
> + "backend"));
The error message is misaligned, should be on a single line and also
should be in the validation code not in the formatter.
> + return -1;
> + }
> +
> + if (qemuMonitorCreateObjectProps(props, "rng-builtin", objAlias,
> + NULL) < 0)
> + return -1;
> +
> + break;
> +
> case VIR_DOMAIN_RNG_BACKEND_LAST:
> virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
> _("unknown rng-random backend"));
This patch fails to pass make check:
$ ./tests/qemucapabilitiestest
TEST: qemucapabilitiestest
............!........................... 40
....!.......!........................... 80
....!... 88 FAIL
45) 4.2.0 (x86_64) ...
In '/home/pipo/libvirt/tests/qemucapabilitiesdata/caps_4.2.0.x86_64.xml':
Offset 7070
Expect [v]
Actual [flag name='rng-builtin'/>
<v]
... FAILED
More information about the libvir-list
mailing list