On Thu, Jun 14, 2018 at 09:04:09 +0100, Daniel Berrange wrote:
On Thu, Jun 14, 2018 at 09:40:04AM +0200, Ján Tomko wrote:
> The query-sev-capabilities command fails if SEV is not compiled in,
> even though both the command and -object sev-guest are present
> in that case :/
>
> Ignore the errors to avoid spamming the logs:
> internal error: unable to execute QEMU command 'query-sev-capabilities': SEV
feature is not available
>
> Signed-off-by: Ján Tomko <jtomko(a)redhat.com>
> ---
> src/qemu/qemu_monitor_json.c | 6 ++++++
> 1 file changed, 6 insertions(+)
Reviewed-by: Daniel P. Berrangé <berrange(a)redhat.com>
> diff --git a/src/qemu/qemu_monitor_json.c b/src/qemu/qemu_monitor_json.c
> index c5480a2d0e..aa89ea7056 100644
> --- a/src/qemu/qemu_monitor_json.c
> +++ b/src/qemu/qemu_monitor_json.c
> @@ -6423,6 +6423,12 @@ qemuMonitorJSONGetSEVCapabilities(qemuMonitorPtr mon,
> if (qemuMonitorJSONCommand(mon, cmd, &reply) < 0)
> goto cleanup;
>
> + /* Both -object sev-guest and query-sev-capabilities can be present
> + * even if SEV is not available */
> + if (qemuMonitorJSONHasError(reply, "GenericError")) {
I wish QEMU has a nice "NotAvailable" error so we could distinguish it
from genuine errors :-(
Well, in this case it seems like not advertising the command at all if
SEV is not compiled in would be a better option.