Message ID | 20230713054502.410911-3-gshan@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | hw/arm/virt: Use generic CPU invalidation | expand |
On Thu, 13 Jul 2023 15:45:01 +1000 Gavin Shan <gshan@redhat.com> wrote: > There is a generic CPU type invalidation in machine_run_board_init() ^^^^^ using that throughout the series is confusing to me. Perhaps use original phrase 'valid cpu types' with appropriate rephrasing would be better > and we needn't a same and private invalidation. Set mc->valid_cpu_types > to use the generic CPU type invalidation. I's suggest to replace commit message/subj with something like arm/virt specific cpu_type_valid() is duplicate of ... drop it and use ... > No functional change intended. > > Signed-off-by: Gavin Shan <gshan@redhat.com> > --- > hw/arm/virt.c | 21 +++------------------ > 1 file changed, 3 insertions(+), 18 deletions(-) > > diff --git a/hw/arm/virt.c b/hw/arm/virt.c > index 7d9dbc2663..43d7772ffd 100644 > --- a/hw/arm/virt.c > +++ b/hw/arm/virt.c > @@ -203,7 +203,7 @@ static const int a15irqmap[] = { > [VIRT_PLATFORM_BUS] = 112, /* ...to 112 + PLATFORM_BUS_NUM_IRQS -1 */ > }; > > -static const char *valid_cpus[] = { > +static const char *valid_cpu_types[] = { > #ifdef CONFIG_TCG > ARM_CPU_TYPE_NAME("cortex-a7"), > ARM_CPU_TYPE_NAME("cortex-a15"), > @@ -219,20 +219,9 @@ static const char *valid_cpus[] = { > ARM_CPU_TYPE_NAME("cortex-a57"), > ARM_CPU_TYPE_NAME("host"), > ARM_CPU_TYPE_NAME("max"), > + NULL > }; > > -static bool cpu_type_valid(const char *cpu) > -{ > - int i; > - > - for (i = 0; i < ARRAY_SIZE(valid_cpus); i++) { > - if (strcmp(cpu, valid_cpus[i]) == 0) { > - return true; > - } > - } > - return false; > -} > - > static void create_randomness(MachineState *ms, const char *node) > { > struct { > @@ -2030,11 +2019,6 @@ static void machvirt_init(MachineState *machine) > unsigned int smp_cpus = machine->smp.cpus; > unsigned int max_cpus = machine->smp.max_cpus; > > - if (!cpu_type_valid(machine->cpu_type)) { > - error_report("mach-virt: CPU type %s not supported", machine->cpu_type); > - exit(1); > - } > - > possible_cpus = mc->possible_cpu_arch_ids(machine); > > /* > @@ -2953,6 +2937,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) > #else > mc->default_cpu_type = ARM_CPU_TYPE_NAME("max"); > #endif > + mc->valid_cpu_types = valid_cpu_types; > mc->get_default_cpu_node_id = virt_get_default_cpu_node_id; > mc->kvm_type = virt_kvm_type; > assert(!mc->get_hotplug_handler);
Hi Igor, On 7/14/23 21:59, Igor Mammedov wrote: > On Thu, 13 Jul 2023 15:45:01 +1000 > Gavin Shan <gshan@redhat.com> wrote: > >> There is a generic CPU type invalidation in machine_run_board_init() > ^^^^^ > using that throughout the series is confusing to me. > Perhaps use original phrase 'valid cpu types' with appropriate rephrasing > would be better > Sure and sorry about the confusion. I will improve accordingly in next revision. >> and we needn't a same and private invalidation. Set mc->valid_cpu_types >> to use the generic CPU type invalidation. > > I's suggest to replace commit message/subj with something like > > arm/virt specific cpu_type_valid() is duplicate of ... > drop it and use ... > Sure, will do in next revision. >> No functional change intended. > > > >> >> Signed-off-by: Gavin Shan <gshan@redhat.com> >> --- >> hw/arm/virt.c | 21 +++------------------ >> 1 file changed, 3 insertions(+), 18 deletions(-) >> >> diff --git a/hw/arm/virt.c b/hw/arm/virt.c >> index 7d9dbc2663..43d7772ffd 100644 >> --- a/hw/arm/virt.c >> +++ b/hw/arm/virt.c >> @@ -203,7 +203,7 @@ static const int a15irqmap[] = { >> [VIRT_PLATFORM_BUS] = 112, /* ...to 112 + PLATFORM_BUS_NUM_IRQS -1 */ >> }; >> >> -static const char *valid_cpus[] = { >> +static const char *valid_cpu_types[] = { >> #ifdef CONFIG_TCG >> ARM_CPU_TYPE_NAME("cortex-a7"), >> ARM_CPU_TYPE_NAME("cortex-a15"), >> @@ -219,20 +219,9 @@ static const char *valid_cpus[] = { >> ARM_CPU_TYPE_NAME("cortex-a57"), >> ARM_CPU_TYPE_NAME("host"), >> ARM_CPU_TYPE_NAME("max"), >> + NULL >> }; >> >> -static bool cpu_type_valid(const char *cpu) >> -{ >> - int i; >> - >> - for (i = 0; i < ARRAY_SIZE(valid_cpus); i++) { >> - if (strcmp(cpu, valid_cpus[i]) == 0) { >> - return true; >> - } >> - } >> - return false; >> -} >> - >> static void create_randomness(MachineState *ms, const char *node) >> { >> struct { >> @@ -2030,11 +2019,6 @@ static void machvirt_init(MachineState *machine) >> unsigned int smp_cpus = machine->smp.cpus; >> unsigned int max_cpus = machine->smp.max_cpus; >> >> - if (!cpu_type_valid(machine->cpu_type)) { >> - error_report("mach-virt: CPU type %s not supported", machine->cpu_type); >> - exit(1); >> - } >> - >> possible_cpus = mc->possible_cpu_arch_ids(machine); >> >> /* >> @@ -2953,6 +2937,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) >> #else >> mc->default_cpu_type = ARM_CPU_TYPE_NAME("max"); >> #endif >> + mc->valid_cpu_types = valid_cpu_types; >> mc->get_default_cpu_node_id = virt_get_default_cpu_node_id; >> mc->kvm_type = virt_kvm_type; >> assert(!mc->get_hotplug_handler); Thanks, Gavin
diff --git a/hw/arm/virt.c b/hw/arm/virt.c index 7d9dbc2663..43d7772ffd 100644 --- a/hw/arm/virt.c +++ b/hw/arm/virt.c @@ -203,7 +203,7 @@ static const int a15irqmap[] = { [VIRT_PLATFORM_BUS] = 112, /* ...to 112 + PLATFORM_BUS_NUM_IRQS -1 */ }; -static const char *valid_cpus[] = { +static const char *valid_cpu_types[] = { #ifdef CONFIG_TCG ARM_CPU_TYPE_NAME("cortex-a7"), ARM_CPU_TYPE_NAME("cortex-a15"), @@ -219,20 +219,9 @@ static const char *valid_cpus[] = { ARM_CPU_TYPE_NAME("cortex-a57"), ARM_CPU_TYPE_NAME("host"), ARM_CPU_TYPE_NAME("max"), + NULL }; -static bool cpu_type_valid(const char *cpu) -{ - int i; - - for (i = 0; i < ARRAY_SIZE(valid_cpus); i++) { - if (strcmp(cpu, valid_cpus[i]) == 0) { - return true; - } - } - return false; -} - static void create_randomness(MachineState *ms, const char *node) { struct { @@ -2030,11 +2019,6 @@ static void machvirt_init(MachineState *machine) unsigned int smp_cpus = machine->smp.cpus; unsigned int max_cpus = machine->smp.max_cpus; - if (!cpu_type_valid(machine->cpu_type)) { - error_report("mach-virt: CPU type %s not supported", machine->cpu_type); - exit(1); - } - possible_cpus = mc->possible_cpu_arch_ids(machine); /* @@ -2953,6 +2937,7 @@ static void virt_machine_class_init(ObjectClass *oc, void *data) #else mc->default_cpu_type = ARM_CPU_TYPE_NAME("max"); #endif + mc->valid_cpu_types = valid_cpu_types; mc->get_default_cpu_node_id = virt_get_default_cpu_node_id; mc->kvm_type = virt_kvm_type; assert(!mc->get_hotplug_handler);
There is a generic CPU type invalidation in machine_run_board_init() and we needn't a same and private invalidation. Set mc->valid_cpu_types to use the generic CPU type invalidation. No functional change intended. Signed-off-by: Gavin Shan <gshan@redhat.com> --- hw/arm/virt.c | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-)