[Qemu-devel] [PATCH 1/5] target/arm: Install ARMISARegisters from kvm host

Richard Henderson posted 5 patches 7 years, 3 months ago
There is a newer version of this series
[Qemu-devel] [PATCH 1/5] target/arm: Install ARMISARegisters from kvm host
Posted by Richard Henderson 7 years, 3 months ago
The ID registers are replacing (some of) the feature bits.
We need (some of) these values to determine the set of data
to be handled during migration.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
---
 target/arm/kvm_arm.h | 1 +
 target/arm/kvm.c     | 1 +
 2 files changed, 2 insertions(+)

diff --git a/target/arm/kvm_arm.h b/target/arm/kvm_arm.h
index 21c0129da2..6393455b1d 100644
--- a/target/arm/kvm_arm.h
+++ b/target/arm/kvm_arm.h
@@ -183,6 +183,7 @@ void kvm_arm_destroy_scratch_host_vcpu(int *fdarray);
  * by asking the host kernel)
  */
 typedef struct ARMHostCPUFeatures {
+    ARMISARegisters isar;
     uint64_t features;
     uint32_t target;
     const char *dtb_compatible;
diff --git a/target/arm/kvm.c b/target/arm/kvm.c
index 09a86e2820..44dd0ce6ce 100644
--- a/target/arm/kvm.c
+++ b/target/arm/kvm.c
@@ -158,6 +158,7 @@ void kvm_arm_set_cpu_features_from_host(ARMCPU *cpu)
 
     cpu->kvm_target = arm_host_cpu_features.target;
     cpu->dtb_compatible = arm_host_cpu_features.dtb_compatible;
+    cpu->isar = arm_host_cpu_features.isar;
     env->features = arm_host_cpu_features.features;
 }
 
-- 
2.17.2


Re: [Qemu-devel] [PATCH 1/5] target/arm: Install ARMISARegisters from kvm host
Posted by Peter Maydell 7 years, 3 months ago
On 24 October 2018 at 12:37, Richard Henderson
<richard.henderson@linaro.org> wrote:
> The ID registers are replacing (some of) the feature bits.
> We need (some of) these values to determine the set of data
> to be handled during migration.
>
> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
> ---
>  target/arm/kvm_arm.h | 1 +
>  target/arm/kvm.c     | 1 +
>  2 files changed, 2 insertions(+)
>
> diff --git a/target/arm/kvm_arm.h b/target/arm/kvm_arm.h
> index 21c0129da2..6393455b1d 100644
> --- a/target/arm/kvm_arm.h
> +++ b/target/arm/kvm_arm.h
> @@ -183,6 +183,7 @@ void kvm_arm_destroy_scratch_host_vcpu(int *fdarray);
>   * by asking the host kernel)
>   */
>  typedef struct ARMHostCPUFeatures {
> +    ARMISARegisters isar;
>      uint64_t features;
>      uint32_t target;
>      const char *dtb_compatible;
> diff --git a/target/arm/kvm.c b/target/arm/kvm.c
> index 09a86e2820..44dd0ce6ce 100644
> --- a/target/arm/kvm.c
> +++ b/target/arm/kvm.c
> @@ -158,6 +158,7 @@ void kvm_arm_set_cpu_features_from_host(ARMCPU *cpu)
>
>      cpu->kvm_target = arm_host_cpu_features.target;
>      cpu->dtb_compatible = arm_host_cpu_features.dtb_compatible;
> +    cpu->isar = arm_host_cpu_features.isar;
>      env->features = arm_host_cpu_features.features;
>  }

Reviewed-by: Peter Maydell <peter.maydell@linaro.org>

thanks
-- PMM