On Tue, 12 Nov 2024 11:14:58 +0100 Mauro Carvalho Chehab <mchehab+hua...@kernel.org> wrote:
> Extending to multiple sources require a BIOS pointer to the > beginning of the HEST table, which in turn requires a backward-compatible > code. > > So, the current code supports only one source. Ensure that and simplify > the code. > > Signed-off-by: Mauro Carvalho Chehab <mchehab+hua...@kernel.org> One trivial comment. Otherwise LGTM Reviewed-by: Jonathan Cameron <jonathan.came...@huawei.com> > --- > void ghes_record_cper_errors(const void *cper, size_t len, > uint16_t source_id, Error **errp) > { > uint64_t cper_addr = 0, read_ack_register_addr = 0, read_ack_register; > - uint64_t start_addr; > AcpiGedState *acpi_ged_state; > AcpiGhesState *ags; > > @@ -418,11 +416,8 @@ void ghes_record_cper_errors(const void *cper, size_t > len, > } > ags = &acpi_ged_state->ghes_state; > > - start_addr = le64_to_cpu(ags->hw_error_le); > - > - start_addr += source_id * sizeof(uint64_t); > - > - get_ghes_offsets(start_addr, &cper_addr, &read_ack_register_addr); > + assert(ACPI_GHES_ERROR_SOURCE_COUNT == 1); > + get_ghes_offsets(le64_to_cpu(ags->hw_error_le), &cper_addr, > &read_ack_register_addr); Long line. I'd break it. > > cper_addr = le64_to_cpu(cper_addr); > if (!cper_addr) {