On Sat, 29 Jun 2024 at 13:51, Akihiko Odaki <akihiko.odaki@xxxxxxxxxx> wrote: > > kvm-steal-time and sve properties are added for KVM even if the > corresponding features are not available. Always add pmu property too. > > Signed-off-by: Akihiko Odaki <akihiko.odaki@xxxxxxxxxx> > --- > target/arm/cpu.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/target/arm/cpu.c b/target/arm/cpu.c > index 35fa281f1b98..0da72c12a5bd 100644 > --- a/target/arm/cpu.c > +++ b/target/arm/cpu.c > @@ -1770,9 +1770,10 @@ void arm_cpu_post_init(Object *obj) > > if (arm_feature(&cpu->env, ARM_FEATURE_PMU)) { > cpu->has_pmu = true; > - object_property_add_bool(obj, "pmu", arm_get_pmu, arm_set_pmu); > } > > + object_property_add_bool(obj, "pmu", arm_get_pmu, arm_set_pmu); This will allow the user to set the ARM_FEATURE_PMU feature bit on TCG CPUs where that doesn't make sense. If we want to make the property visible on all CPUs, we need to make it be an error to set it when it's not valid to set it (probably by adding some TCG/hvf equivalent to the "raise an error in arm_set_pmu()" code branch we already have for KVM). thanks -- PMM