From 80e5db303dc82e357df923dc2bfcb858c20282a0 Mon Sep 17 00:00:00 2001 From: Igor Mammedov Date: Wed, 18 Jan 2017 18:13:20 +0100 Subject: machine: Make possible_cpu_arch_ids() return const pointer make sure that external callers won't try to modify possible_cpus and owner of possible_cpus can access it directly when it modifies it. Signed-off-by: Igor Mammedov Message-Id: <1484759609-264075-5-git-send-email-imammedo@redhat.com> Reviewed-by: Eduardo Habkost Signed-off-by: Eduardo Habkost --- hw/acpi/cpu.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'hw/acpi/cpu.c') diff --git a/hw/acpi/cpu.c b/hw/acpi/cpu.c index 5ac89fefaf..6017ca04bf 100644 --- a/hw/acpi/cpu.c +++ b/hw/acpi/cpu.c @@ -190,7 +190,7 @@ void cpu_hotplug_hw_init(MemoryRegion *as, Object *owner, { MachineState *machine = MACHINE(qdev_get_machine()); MachineClass *mc = MACHINE_GET_CLASS(machine); - CPUArchIdList *id_list; + const CPUArchIdList *id_list; int i; assert(mc->possible_cpu_arch_ids); @@ -201,7 +201,6 @@ void cpu_hotplug_hw_init(MemoryRegion *as, Object *owner, state->devs[i].cpu = id_list->cpus[i].cpu; state->devs[i].arch_id = id_list->cpus[i].arch_id; } - g_free(id_list); memory_region_init_io(&state->ctrl_reg, owner, &cpu_hotplug_ops, state, "acpi-mem-hotplug", ACPI_CPU_HOTPLUG_REG_LEN); memory_region_add_subregion(as, base_addr, &state->ctrl_reg); @@ -325,7 +324,7 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, Aml *one = aml_int(1); Aml *sb_scope = aml_scope("_SB"); MachineClass *mc = MACHINE_GET_CLASS(machine); - CPUArchIdList *arch_ids = mc->possible_cpu_arch_ids(machine); + const CPUArchIdList *arch_ids = mc->possible_cpu_arch_ids(machine); char *cphp_res_path = g_strdup_printf("%s." CPUHP_RES_DEVICE, res_root); Object *obj = object_resolve_path_type("", TYPE_ACPI_DEVICE_IF, NULL); AcpiDeviceIfClass *adevc = ACPI_DEVICE_IF_GET_CLASS(obj); @@ -574,5 +573,4 @@ void build_cpus_aml(Aml *table, MachineState *machine, CPUHotplugFeatures opts, aml_append(table, method); g_free(cphp_res_path); - g_free(arch_ids); } -- cgit v1.2.3