Hi Drew, On 3/10/21 2:52 PM, Andrew Jones wrote: > Prior to commit f2ce39b4f067 a MachineClass kvm_type method > only needed to be registered to ensure it would be executed. > With commit f2ce39b4f067 a kvm-type machine property must also > be specified. hw/arm/virt relies on the kvm_type method to pass > its selected IPA limit to KVM, but this is not exposed as a > machine property. Restore the previous functionality of invoking > kvm_type when it's present.
Ouch, good catch for this regression > > Fixes: f2ce39b4f067 ("vl: make qemu_get_machine_opts static") > Signed-off-by: Andrew Jones <drjo...@redhat.com> > --- > accel/kvm/kvm-all.c | 2 ++ > include/hw/boards.h | 1 + > 2 files changed, 3 insertions(+) > > diff --git a/accel/kvm/kvm-all.c b/accel/kvm/kvm-all.c > index f88a52393fe0..37b0a1861e72 100644 > --- a/accel/kvm/kvm-all.c > +++ b/accel/kvm/kvm-all.c > @@ -2068,6 +2068,8 @@ static int kvm_init(MachineState *ms) > "kvm-type", > &error_abort); > type = mc->kvm_type(ms, kvm_type); > + } else if (mc->kvm_type) { > + type = mc->kvm_type(ms, NULL); > } > > do { > diff --git a/include/hw/boards.h b/include/hw/boards.h > index a46dfe5d1a6a..327949967609 100644 > --- a/include/hw/boards.h > +++ b/include/hw/boards.h > @@ -128,6 +128,7 @@ typedef struct { > * @kvm_type: > * Return the type of KVM corresponding to the kvm-type string option or > * computed based on other criteria such as the host kernel capabilities. > + * kvm-type may be NULL if it is not needed. > * @numa_mem_supported: > * true if '--numa node.mem' option is supported and false otherwise > * @smp_parse: > Reviewed-by: Eric Auger <eric.au...@redhat.com> Eric