spapr.c: use g_auto* with 'nodename' in CPU DT functions
Next patch will use the 'nodename' string in spapr_core_dt_populate() after the point it's being freed today. Instead of moving 'g_free(nodename)' around, let's do a QoL change in both CPU DT functions where 'nodename' is being freed, and use g_autofree to avoid the 'g_free()' call altogether. Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com> Message-Id: <20210120232305.241521-2-danielhb413@gmail.com> Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
1214d55d1c
commit
7265bc3e54
@ -791,7 +791,6 @@ static void spapr_dt_cpus(void *fdt, SpaprMachineState *spapr)
|
||||
CPUState *cs;
|
||||
int n_cpus;
|
||||
int cpus_offset;
|
||||
char *nodename;
|
||||
int i;
|
||||
|
||||
cpus_offset = fdt_add_subnode(fdt, 0, "cpus");
|
||||
@ -819,6 +818,7 @@ static void spapr_dt_cpus(void *fdt, SpaprMachineState *spapr)
|
||||
PowerPCCPU *cpu = POWERPC_CPU(cs);
|
||||
int index = spapr_get_vcpu_id(cpu);
|
||||
DeviceClass *dc = DEVICE_GET_CLASS(cs);
|
||||
g_autofree char *nodename = NULL;
|
||||
int offset;
|
||||
|
||||
if (!spapr_is_thread0_in_vcore(spapr, cpu)) {
|
||||
@ -827,7 +827,6 @@ static void spapr_dt_cpus(void *fdt, SpaprMachineState *spapr)
|
||||
|
||||
nodename = g_strdup_printf("%s@%x", dc->fw_name, index);
|
||||
offset = fdt_add_subnode(fdt, cpus_offset, nodename);
|
||||
g_free(nodename);
|
||||
_FDT(offset);
|
||||
spapr_dt_cpu(cs, fdt, offset, spapr);
|
||||
}
|
||||
@ -3749,12 +3748,11 @@ int spapr_core_dt_populate(SpaprDrc *drc, SpaprMachineState *spapr,
|
||||
PowerPCCPU *cpu = POWERPC_CPU(cs);
|
||||
DeviceClass *dc = DEVICE_GET_CLASS(cs);
|
||||
int id = spapr_get_vcpu_id(cpu);
|
||||
char *nodename;
|
||||
g_autofree char *nodename = NULL;
|
||||
int offset;
|
||||
|
||||
nodename = g_strdup_printf("%s@%x", dc->fw_name, id);
|
||||
offset = fdt_add_subnode(fdt, 0, nodename);
|
||||
g_free(nodename);
|
||||
|
||||
spapr_dt_cpu(cs, fdt, offset, spapr);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user