Message ID | 20200326112829.19989-1-imammedo@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [for-5.0] arm:virt: fix broken IPA range with KVM enabled | expand |
Hi Igor, On 3/26/20 12:28 PM, Igor Mammedov wrote: > Commit a1b18df9a4848, broke virt_kvm_type() logic, which depends on > maxram_size, ram_size, ram_slots being parsed/set on machine instance > at the time accelerator (KVM) is initialized. > > set_memory_options() part was already reverted by commit 2a7b18a3205b, > so revert remaining initialization of above machine fields to make > virt_kvm_type() work as it used to. Oh I did not notice set_memory_options() change was already reverted. > > Signed-off-by: Igor Mammedov <imammedo@redhat.com> > Reported-by: Auger Eric <eric.auger@redhat.com> Reviewed-by: Eric Auger <eric.auger@redhat.com> Tested-by: Eric Auger <eric.auger@redhat.com> > --- > softmmu/vl.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > > diff --git a/softmmu/vl.c b/softmmu/vl.c > index 814537bb42..132c6e73dc 100644 > --- a/softmmu/vl.c > +++ b/softmmu/vl.c > @@ -4137,6 +4137,9 @@ void qemu_init(int argc, char **argv, char **envp) > machine_opts = qemu_get_machine_opts(); > qemu_opt_foreach(machine_opts, machine_set_property, current_machine, > &error_fatal); > + current_machine->ram_size = ram_size; > + current_machine->maxram_size = maxram_size; > + current_machine->ram_slots = ram_slots; Nit: Before configure_accelerators() call there is a comment stating that configure_accelerators uses machine properties and must be called after machine_set_property. Maybe we should add it also uses memory properties and should be called after set_memory_options. This may avoid other changes of the same style. Thanks Eric > > /* > * Note: uses machine properties such as kernel-irqchip, must run > @@ -4315,10 +4318,6 @@ void qemu_init(int argc, char **argv, char **envp) > } > } > > - current_machine->ram_size = ram_size; > - current_machine->maxram_size = maxram_size; > - current_machine->ram_slots = ram_slots; > - > parse_numa_opts(current_machine); > > if (machine_class->default_ram_id && current_machine->ram_size && >
diff --git a/softmmu/vl.c b/softmmu/vl.c index 814537bb42..132c6e73dc 100644 --- a/softmmu/vl.c +++ b/softmmu/vl.c @@ -4137,6 +4137,9 @@ void qemu_init(int argc, char **argv, char **envp) machine_opts = qemu_get_machine_opts(); qemu_opt_foreach(machine_opts, machine_set_property, current_machine, &error_fatal); + current_machine->ram_size = ram_size; + current_machine->maxram_size = maxram_size; + current_machine->ram_slots = ram_slots; /* * Note: uses machine properties such as kernel-irqchip, must run @@ -4315,10 +4318,6 @@ void qemu_init(int argc, char **argv, char **envp) } } - current_machine->ram_size = ram_size; - current_machine->maxram_size = maxram_size; - current_machine->ram_slots = ram_slots; - parse_numa_opts(current_machine); if (machine_class->default_ram_id && current_machine->ram_size &&
Commit a1b18df9a4848, broke virt_kvm_type() logic, which depends on maxram_size, ram_size, ram_slots being parsed/set on machine instance at the time accelerator (KVM) is initialized. set_memory_options() part was already reverted by commit 2a7b18a3205b, so revert remaining initialization of above machine fields to make virt_kvm_type() work as it used to. Signed-off-by: Igor Mammedov <imammedo@redhat.com> Reported-by: Auger Eric <eric.auger@redhat.com> --- softmmu/vl.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)