[+Catalin, Will] On Mon, Jul 17, 2023 at 07:33:45PM +0800, Guanghui Feng wrote: > According to the ARM IORT specifications DEN 0049 issue E, > the "Number of IDs" field in the ID mapping format reports > the number of IDs in the mapping range minus one. > > In iort_node_get_rmr_info(), we erroneously skip ID mappings > whose "Number of IDs" equal to 0, resulting in valid mapping > nodes with a single ID to map being skipped, which is wrong. > > Fix iort_node_get_rmr_info() by removing the bogus id_count > check. > > Fixes: 491cf4a6735a ("ACPI/IORT: Add support to retrieve IORT RMR reserved regions") > Signed-off-by: Guanghui Feng <guanghuifeng@xxxxxxxxxxxxxxxxx> > --- > drivers/acpi/arm64/iort.c | 3 --- > 1 file changed, 3 deletions(-) Acked-by: Lorenzo Pieralisi <lpieralisi@xxxxxxxxxx> Catalin/Will, can you pick this up please ? Thanks, Lorenzo > diff --git a/drivers/acpi/arm64/iort.c b/drivers/acpi/arm64/iort.c > index 3631230..56d8873 100644 > --- a/drivers/acpi/arm64/iort.c > +++ b/drivers/acpi/arm64/iort.c > @@ -1007,9 +1007,6 @@ static void iort_node_get_rmr_info(struct acpi_iort_node *node, > for (i = 0; i < node->mapping_count; i++, map++) { > struct acpi_iort_node *parent; > > - if (!map->id_count) > - continue; > - > parent = ACPI_ADD_PTR(struct acpi_iort_node, iort_table, > map->output_reference); > if (parent != iommu) > -- > 1.8.3.1 >