[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-stable] [PATCH v2 1/4] qapi: fill in CpuInfoFast.arch in query
From: |
Cornelia Huck |
Subject: |
Re: [Qemu-stable] [PATCH v2 1/4] qapi: fill in CpuInfoFast.arch in query-cpus-fast |
Date: |
Fri, 27 Apr 2018 09:05:39 +0200 |
On Thu, 26 Apr 2018 20:34:01 +0200
Laszlo Ersek <address@hidden> wrote:
> * Commit ca230ff33f89 added the @arch field to @CpuInfoFast, but it failed
> to set the new field in qmp_query_cpus_fast(), when TARGET_S390X was not
> defined. The updated @query-cpus-fast example in "qapi-schema.json"
> showed "arch":"x86" only because qmp_query_cpus_fast() calls g_malloc0()
> to allocate @CpuInfoFast, and the CPU_INFO_ARCH_X86 enum constant is
> generated with value 0.
>
> All @arch values other than @s390 implied the @CpuInfoOther sub-struct
> for @CpuInfoFast -- at the time of writing the patch --, thus no fields
> other than @arch needed to be set when TARGET_S390X was not defined. Set
> @arch now, by copying the corresponding assignments from
> qmp_query_cpus().
>
> * Commit 25fa194b7b11 added the @riscv enum constant to @CpuInfoArch (used
> in both @CpuInfo and @CpuInfoFast -- the return types of the @query-cpus
> and @query-cpus-fast commands, respectively), and assigned, in both
> return structures, the @CpuInfoRISCV sub-structure to the new enum
> value.
>
> However, qmp_query_cpus_fast() would not populate either the @arch field
> or the @CpuInfoRISCV sub-structure, when TARGET_RISCV was defined; only
> qmp_query_cpus() would.
>
> Assign @CpuInfoOther to the @riscv enum constant in @CpuInfoFast, and
> populate only the @arch field in qmp_query_cpus_fast(). Getting CPU
> state without interrupting KVM is an exceptional thing that only S390X
> does currently. Quoting Cornelia Huck <address@hidden>, "s390x is
> exceptional in that it has state in QEMU that is actually interesting
> for upper layers and can be retrieved without performance penalty". See
> also
> <https://www.redhat.com/archives/libvir-list/2018-February/msg00121.html>.
>
> Cc: Cornelia Huck <address@hidden>
> Cc: Eric Blake <address@hidden>
> Cc: Markus Armbruster <address@hidden>
> Cc: Viktor VM Mihajlovski <address@hidden>
> Cc: address@hidden
> Fixes: ca230ff33f89bf7102cbfbc2328716da6750aaed
> Fixes: 25fa194b7b11901561532e435beb83d046899f7a
> Signed-off-by: Laszlo Ersek <address@hidden>
> Reviewed-by: Eric Blake <address@hidden>
> ---
>
> Notes:
> PATCHv2:
>
> - squash v1 patches 1/6 and 2/6 [Eric, Markus, Cornelia]
>
> - fix "added added" typo in the commit message [Eric]
>
> - update commit message wrt. S390X particulars [Cornelia, Markus,
> Viktor]
>
> - pick up Eric's R-b (synthesized from his R-b's for v1 1/6 & 2/6)
>
> - don't pick up Cornelia's R-b (only given for v1 1/6)
>
> - update the CC list
>
> PATCHv1:
>
> - new patch
>
> qapi/misc.json | 2 +-
> cpus.c | 16 +++++++++++++++-
> 2 files changed, 16 insertions(+), 2 deletions(-)
Reviewed-by: Cornelia Huck <address@hidden>