On 9/7/21 4:47 PM, Igor Mammedov wrote: > it replaces error-prone pointer arithmetic for build_header() API, > with 2 calls to start and finish table creation, > which hides offsets magic from API user. > > Signed-off-by: Igor Mammedov <imamm...@redhat.com> > Reviewed-by: Dongjiu Geng <gengdongj...@gmail.com> Reviewed-by: Eric Auger <eric.au...@redhat.com> Eric > --- > v3: > * s/acpi_init_table|acpi_table_composed/acpi_table_begin|acpi_table_end/ > > CC: qemu-...@nongnu.org > CC: drjo...@redhat.com > CC: gengdongj...@gmail.com > CC: eau...@redhat.com > --- > hw/acpi/ghes.c | 10 ++++------ > 1 file changed, 4 insertions(+), 6 deletions(-) > > diff --git a/hw/acpi/ghes.c b/hw/acpi/ghes.c > index a749b84d62..45d9a809cc 100644 > --- a/hw/acpi/ghes.c > +++ b/hw/acpi/ghes.c > @@ -362,18 +362,16 @@ static void build_ghes_v2(GArray *table_data, int > source_id, BIOSLinker *linker) > void acpi_build_hest(GArray *table_data, BIOSLinker *linker, > const char *oem_id, const char *oem_table_id) > { > - uint64_t hest_start = table_data->len; > + AcpiTable table = { .sig = "HEST", .rev = 1, > + .oem_id = oem_id, .oem_table_id = oem_table_id }; > > - /* Hardware Error Source Table header*/ > - acpi_data_push(table_data, sizeof(AcpiTableHeader)); > + acpi_table_begin(&table, table_data); > > /* Error Source Count */ > build_append_int_noprefix(table_data, ACPI_GHES_ERROR_SOURCE_COUNT, 4); > - > build_ghes_v2(table_data, ACPI_HEST_SRC_ID_SEA, linker); > > - build_header(linker, table_data, (void *)(table_data->data + hest_start), > - "HEST", table_data->len - hest_start, 1, oem_id, > oem_table_id); > + acpi_table_end(linker, &table); > } > > void acpi_ghes_add_fw_cfg(AcpiGhesState *ags, FWCfgState *s, >