libvirt/src/cpu
Daniel Henrique Barboza d4c39bad85 cpu_riscv64.c: add update() implementation
At this moment it is not possible to launch a 'riscv64' domain if a CPU
definition is presented in the domain. For example, adding this CPU
definition:

  <cpu mode='custom' match='exact' check='none'>
    <model fallback='forbid'>rv64</model>
  </cpu>

Will trigger the following error:

$ sudo ./run tools/virsh start riscv-virt1
error: Failed to start domain 'riscv-virt1'
error: this function is not supported by the connection driver:
       cannot update guest CPU for riscv64 architecture

The error comes from virCPUUpdate(), via qemuProcessUpdateGuestCPU(),
and it's caused by the absence of the 'update' API in the existing
RISC-V driver.

Add an 'update' API impl to the RISC-V driver to allow for CPU
definitions to be declared in RISC-V domains. This API was copied from
the ARM driver (virCPUarmUpdate()) since it's a good enough
implementation to get us going.

Signed-off-by: Daniel Henrique Barboza <dbarboza@ventanamicro.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
2023-05-04 14:15:15 +02:00
..
cpu_arm_data.h cpu_arm: Avoid use of 'unsigned long' 2022-11-02 09:20:58 +01:00
cpu_arm.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu_arm.h
cpu_map.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu_map.h
cpu_ppc64_data.h
cpu_ppc64.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu_ppc64.h
cpu_riscv64.c cpu_riscv64.c: add update() implementation 2023-05-04 14:15:15 +02:00
cpu_riscv64.h src/cpu: add a basic RiscV64 cpu driver 2023-01-24 13:24:20 -03:00
cpu_s390.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu_s390.h
cpu_x86_data.h cpu: x86: Introduce the 'hv-avic' feature 2022-11-09 14:08:30 +01:00
cpu_x86.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu_x86.h
cpu.c cpu: Update format strings in translated messages 2023-04-01 11:40:32 +02:00
cpu.h Introduce virCPUGetVendorForModel and use it in QEMU driver 2022-10-10 14:31:43 +02:00
meson.build src/cpu: add a basic RiscV64 cpu driver 2023-01-24 13:24:20 -03:00