2023-07-17 11:51:36

by Guanghui Feng

[permalink] [raw]
Subject: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

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 <[email protected]>
---
drivers/acpi/arm64/iort.c | 3 ---
1 file changed, 3 deletions(-)

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



2023-07-18 08:17:04

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

[+Catalin, Will, Shameer]

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 <[email protected]>
> ---
> drivers/acpi/arm64/iort.c | 3 ---
> 1 file changed, 3 deletions(-)
>
> 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)

Shameer, I know this may look like overkill since the hunk we are
removing is buggy but can you please test this patch on platforms
with RMR to make sure we are not triggering regressions by removing
it (by the specs that's what should be done but current firmware
is always something to reckon with) ?

Thanks,
Lorenzo

2023-07-18 09:47:28

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Tue, Jul 18, 2023 at 04:54:36PM +0800, guanghui.fgh wrote:
>
>
> 在 2023/7/18 15:52, Lorenzo Pieralisi 写道:
> > [+Catalin, Will, Shameer]
> >
> > 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 <[email protected]>
> > > ---
> > > drivers/acpi/arm64/iort.c | 3 ---
> > > 1 file changed, 3 deletions(-)
> > >
> > > 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)
> >
> > Shameer, I know this may look like overkill since the hunk we are
> > removing is buggy but can you please test this patch on platforms
> > with RMR to make sure we are not triggering regressions by removing
> > it (by the specs that's what should be done but current firmware
> > is always something to reckon with) ?
> >
> > Thanks,
> > Lorenzo
> Thanks for your response.
>
> Firstly, I have tested iort rmr with one ID mapping and works well.
>
> Secondly, When there is more than two id mappings, the buggly id_count check
> has no effect(for the id_count is larger than zero).

Thank you, I wasn't asking you, it is comforting to know you tested the
patch before sending it though.

I asked Shameer to make sure the id_count check did not mask a bug
in the platforms on which the RMR IORT implementation was initially
tested - that's it, I don't want to merge a fix and revert it the
next day.

Thanks,
Lorenzo

2023-07-18 09:52:56

by Guanghui Feng

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()



在 2023/7/18 15:52, Lorenzo Pieralisi 写道:
> [+Catalin, Will, Shameer]
>
> 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 <[email protected]>
>> ---
>> drivers/acpi/arm64/iort.c | 3 ---
>> 1 file changed, 3 deletions(-)
>>
>> 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)
>
> Shameer, I know this may look like overkill since the hunk we are
> removing is buggy but can you please test this patch on platforms
> with RMR to make sure we are not triggering regressions by removing
> it (by the specs that's what should be done but current firmware
> is always something to reckon with) ?
>
> Thanks,
> Lorenzo
Thanks for your response.

Firstly, I have tested iort rmr with one ID mapping and works well.

Secondly, When there is more than two id mappings, the buggly id_count
check has no effect(for the id_count is larger than zero).

Subject: RE: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()



> -----Original Message-----
> From: Lorenzo Pieralisi [mailto:[email protected]]
> Sent: 18 July 2023 08:52
> To: Guanghui Feng <[email protected]>
> Cc: Guohanjun (Hanjun Guo) <[email protected]>;
> [email protected]; [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected];
> [email protected]; [email protected]; Shameerali Kolothum Thodi
> <[email protected]>
> Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in
> iort_node_get_rmr_info()
>
> [+Catalin, Will, Shameer]
>
> 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 <[email protected]>
> > ---
> > drivers/acpi/arm64/iort.c | 3 ---
> > 1 file changed, 3 deletions(-)
> >
> > 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)
>
> Shameer, I know this may look like overkill since the hunk we are
> removing is buggy but can you please test this patch on platforms
> with RMR to make sure we are not triggering regressions by removing
> it (by the specs that's what should be done but current firmware
> is always something to reckon with) ?

Yes, that is a valid fix. Unlikely it will be a problem. Anyway, I have requested
Hanjun to help with the testing as I don't have a test setup with me now.

Hanjun, please help.

Thanks,
Shameer

2023-07-19 09:28:58

by Hanjun Guo

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On 2023/7/18 16:56, Shameerali Kolothum Thodi wrote:
>> [+Catalin, Will, Shameer]
>>
>> 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<[email protected]>
>>> ---
>>> drivers/acpi/arm64/iort.c | 3 ---
>>> 1 file changed, 3 deletions(-)
>>>
>>> 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)
>> Shameer, I know this may look like overkill since the hunk we are
>> removing is buggy but can you please test this patch on platforms
>> with RMR to make sure we are not triggering regressions by removing
>> it (by the specs that's what should be done but current firmware
>> is always something to reckon with) ?
> Yes, that is a valid fix. Unlikely it will be a problem. Anyway, I have requested
> Hanjun to help with the testing as I don't have a test setup with me now.

Valid fix for me as well, we had a firmware bug which reported the
numbers of ID as 1 when we only have one ID mapping, so remove the
check is fine for the old firmware, but to make it sure, we need some
test before give it a pass.

>
> Hanjun, please help.

I need some time to get it properly tested on two versions of firmware,
and get the test machine properly setup, please allow me give the
feedback next week.

Thanks
Hanjun

2023-07-26 10:07:08

by Hanjun Guo

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On 2023/7/19 17:13, Hanjun Guo wrote:
> On 2023/7/18 16:56, Shameerali Kolothum Thodi wrote:
>>> [+Catalin, Will, Shameer]
[...]
>>> Shameer, I know this may look like overkill since the hunk we are
>>> removing is buggy but can you please test this patch on platforms
>>> with RMR to make sure we are not triggering regressions by removing
>>> it (by the specs that's what should be done but current firmware
>>> is always something to reckon with) ?
>> Yes, that is a valid fix. Unlikely it will be a problem. Anyway, I
>> have requested
>> Hanjun to help with the testing as I don't have a test setup with me now.
>
> Valid fix for me as well, we had a firmware bug which reported the
> numbers of ID as 1 when we only have one ID mapping, so remove the
> check is fine for the old firmware, but to make it sure, we need some
> test before give it a pass.
>
>>
>> Hanjun, please help.
>
> I need some time to get it properly tested on two versions of firmware,
> and get the test machine properly setup, please allow me give the
> feedback next week.

No regressions were found,

Tested-by: Hanjun Guo <[email protected]>

Thanks
Hanjun

2023-07-27 14:00:14

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

[+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 <[email protected]>
> ---
> drivers/acpi/arm64/iort.c | 3 ---
> 1 file changed, 3 deletions(-)

Acked-by: Lorenzo Pieralisi <[email protected]>

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
>

2023-07-27 14:13:36

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Thu, Jul 27, 2023 at 03:39:27PM +0200, Lorenzo Pieralisi wrote:
> 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 <[email protected]>
> > ---
> > drivers/acpi/arm64/iort.c | 3 ---
> > 1 file changed, 3 deletions(-)
>
> Acked-by: Lorenzo Pieralisi <[email protected]>
>
> Catalin/Will,
>
> can you pick this up please ?

Would you like it merged in 6.5 or 6.6 is fine?

Thanks.

--
Catalin

2023-07-27 14:28:49

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Thu, Jul 27, 2023 at 02:59:02PM +0100, Catalin Marinas wrote:
> On Thu, Jul 27, 2023 at 03:39:27PM +0200, Lorenzo Pieralisi wrote:
> > 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 <[email protected]>
> > > ---
> > > drivers/acpi/arm64/iort.c | 3 ---
> > > 1 file changed, 3 deletions(-)
> >
> > Acked-by: Lorenzo Pieralisi <[email protected]>
> >
> > Catalin/Will,
> >
> > can you pick this up please ?
>
> Would you like it merged in 6.5 or 6.6 is fine?

It is definitely a fix - I don't think that's super urgent
though, bug has been there since v6.0 so the fix can probably
wait to trickle back from v6.6.

Thanks,
Lorenzo

> Thanks.
>
> --
> Catalin

2023-07-27 15:24:55

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Thu, Jul 27, 2023 at 04:17:49PM +0200, Lorenzo Pieralisi wrote:
> On Thu, Jul 27, 2023 at 02:59:02PM +0100, Catalin Marinas wrote:
> > On Thu, Jul 27, 2023 at 03:39:27PM +0200, Lorenzo Pieralisi wrote:
> > > 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 <[email protected]>
> > > > ---
> > > > drivers/acpi/arm64/iort.c | 3 ---
> > > > 1 file changed, 3 deletions(-)
> > >
> > > Acked-by: Lorenzo Pieralisi <[email protected]>
> > >
> > > Catalin/Will,
> > >
> > > can you pick this up please ?
> >
> > Would you like it merged in 6.5 or 6.6 is fine?
>
> It is definitely a fix - I don't think that's super urgent
> though, bug has been there since v6.0 so the fix can probably
> wait to trickle back from v6.6.

On the flip side, it's a fix, Hanjun has tested it and we have a few
weeks in case we need to revert it.

So I'd be inclined to say Catalin should pick it up for 6.5, unless
there's a good reason to wait?

Will

2023-07-27 15:30:56

by Lorenzo Pieralisi

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Thu, Jul 27, 2023 at 04:00:43PM +0100, Will Deacon wrote:
> On Thu, Jul 27, 2023 at 04:17:49PM +0200, Lorenzo Pieralisi wrote:
> > On Thu, Jul 27, 2023 at 02:59:02PM +0100, Catalin Marinas wrote:
> > > On Thu, Jul 27, 2023 at 03:39:27PM +0200, Lorenzo Pieralisi wrote:
> > > > 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 <[email protected]>
> > > > > ---
> > > > > drivers/acpi/arm64/iort.c | 3 ---
> > > > > 1 file changed, 3 deletions(-)
> > > >
> > > > Acked-by: Lorenzo Pieralisi <[email protected]>
> > > >
> > > > Catalin/Will,
> > > >
> > > > can you pick this up please ?
> > >
> > > Would you like it merged in 6.5 or 6.6 is fine?
> >
> > It is definitely a fix - I don't think that's super urgent
> > though, bug has been there since v6.0 so the fix can probably
> > wait to trickle back from v6.6.
>
> On the flip side, it's a fix, Hanjun has tested it and we have a few
> weeks in case we need to revert it.
>
> So I'd be inclined to say Catalin should pick it up for 6.5, unless
> there's a good reason to wait?

No reason to wait - I just wanted to make clear it is not urgent,
if it is possible it makes sense for it to get into v6.5.

Thanks,
Lorenzo

2023-07-28 12:22:24

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Thu, Jul 27, 2023 at 05:08:20PM +0200, Lorenzo Pieralisi wrote:
> On Thu, Jul 27, 2023 at 04:00:43PM +0100, Will Deacon wrote:
> > On Thu, Jul 27, 2023 at 04:17:49PM +0200, Lorenzo Pieralisi wrote:
> > > On Thu, Jul 27, 2023 at 02:59:02PM +0100, Catalin Marinas wrote:
> > > > On Thu, Jul 27, 2023 at 03:39:27PM +0200, Lorenzo Pieralisi wrote:
> > > > > 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 <[email protected]>
> > > > > > ---
> > > > > > drivers/acpi/arm64/iort.c | 3 ---
> > > > > > 1 file changed, 3 deletions(-)
> > > > >
> > > > > Acked-by: Lorenzo Pieralisi <[email protected]>
> > > > >
> > > > > Catalin/Will,
> > > > >
> > > > > can you pick this up please ?
> > > >
> > > > Would you like it merged in 6.5 or 6.6 is fine?
> > >
> > > It is definitely a fix - I don't think that's super urgent
> > > though, bug has been there since v6.0 so the fix can probably
> > > wait to trickle back from v6.6.
> >
> > On the flip side, it's a fix, Hanjun has tested it and we have a few
> > weeks in case we need to revert it.
> >
> > So I'd be inclined to say Catalin should pick it up for 6.5, unless
> > there's a good reason to wait?
>
> No reason to wait - I just wanted to make clear it is not urgent,
> if it is possible it makes sense for it to get into v6.5.

Happy to pick it up.

--
Catalin

2023-07-28 14:28:50

by Catalin Marinas

[permalink] [raw]
Subject: Re: [PATCH v3] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()

On Mon, 17 Jul 2023 19:33:45 +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.
>
> [...]

Applied to arm64 (for-next/fixes), thanks!

[1/1] ACPI/IORT: Remove erroneous id_count check in iort_node_get_rmr_info()
https://git.kernel.org/arm64/c/003e6b56d780

--
Catalin