[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20201023165030.GA2852897@bogus>
Date: Fri, 23 Oct 2020 11:50:30 -0500
From: Rob Herring <robh@...nel.org>
To: Vincent Whitchurch <vincent.whitchurch@...s.com>
Cc: kernel@...s.com, Frank Rowand <frowand.list@...il.com>,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
Rob Herring <robh+dt@...nel.org>
Subject: Re: [PATCH v2] of: Fix reserved-memory overlap detection
On Wed, 21 Oct 2020 11:53:59 +0200, Vincent Whitchurch wrote:
> The reserved-memory overlap detection code fails to detect overlaps if
> either of the regions starts at address 0x0. The code explicitly checks
> for and ignores such regions, apparently in order to ignore dynamically
> allocated regions which have an address of 0x0 at this point. These
> dynamically allocated regions also have a size of 0x0 at this point, so
> fix this by removing the check and sorting the dynamically allocated
> regions ahead of any static regions at address 0x0.
>
> For example, there are two overlaps in this case but they are not
> currently reported:
>
> foo@0 {
> reg = <0x0 0x2000>;
> };
>
> bar@0 {
> reg = <0x0 0x1000>;
> };
>
> baz@...0 {
> reg = <0x1000 0x1000>;
> };
>
> quux {
> size = <0x1000>;
> };
>
> but they are after this patch:
>
> OF: reserved mem: OVERLAP DETECTED!
> bar@0 (0x00000000--0x00001000) overlaps with foo@0 (0x00000000--0x00002000)
> OF: reserved mem: OVERLAP DETECTED!
> foo@0 (0x00000000--0x00002000) overlaps with baz@...0 (0x00001000--0x00002000)
>
> Signed-off-by: Vincent Whitchurch <vincent.whitchurch@...s.com>
> ---
> v2: Fix handling of dynamically allocated regions.
>
> drivers/of/of_reserved_mem.c | 13 +++++++++++--
> 1 file changed, 11 insertions(+), 2 deletions(-)
>
Applied, thanks!
Powered by blists - more mailing lists