On 04/25/18 00:32, Eric Blake wrote: > On 04/24/2018 04:45 PM, Laszlo Ersek wrote: >> 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. >> >> In theory, there are two ways to fix this: >> >> (a) Fill in both the @arch field and the @CpuInfoRISCV sub-structure in >> qmp_query_cpus_fast(), by copying the logic from qmp_query_cpus(). >> >> (b) Assign @CpuInfoOther to the @riscv enum constant in @CpuInfoFast, and >> populate only the @arch field in qmp_query_cpus_fast(). >> >> Approach (b) seems more robust, because: >> >> - clearly there has never been an attempt to get actual RISV CPU state >> from qmp_query_cpus_fast(), so its lack of RISCV support is not actually >> a problem, >> >> - getting CPU state without interrupting KVM looks like an exceptional >> thing to do (only S390X does it currently). >> > ... >> Cc: qemu-sta...@nongnu.org >> Fixes: 25fa194b7b11901561532e435beb83d046899f7a >> Signed-off-by: Laszlo Ersek <ler...@redhat.com> >> --- >> > > Reviewed-by: Eric Blake <ebl...@redhat.com> >
Thanks Eric, I'll fuse your R-b's from #1 and #2 into one R-b for the squashed variant. Hope that's OK. (Please do check the upcoming commit message for more garblage.) Thanks! Laszlo