Re: [PATCH] of: Fix reserved-memory overlap detection

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 20, 2020 at 04:17:27PM +0200, Rob Herring wrote:
> On Tue, Oct 20, 2020 at 8:46 AM Vincent Whitchurch
> <vincent.whitchurch@xxxxxxxx> wrote:
> > On Tue, Oct 20, 2020 at 03:00:14PM +0200, Rob Herring wrote:
> > > On Tue, Oct 20, 2020 at 2:36 AM Vincent Whitchurch
> > > <vincent.whitchurch@xxxxxxxx> wrote:
> > > >
> > > > The reserved-memory overlap detection code fails to detect overlaps if
> > > > either of the regions starts at address 0x0.  For some reason the code
> > > > explicitly checks for and ignores such regions, but this check looks
> > > > invalid.  Remove the check and fix this detection.
> > >
> > > Wouldn't 'base' be 0 for nodes that have a 'size' and no address? The
> > > base in those cases isn't set until later when
> > > __reserved_mem_alloc_size() is called.
> >
> > Ah, yes, I guess that's why the check was there.  I see that those
> > entries have both a zero address and a zero size, so this seems to work:
> 
> Yes, I think it should work.

Thanks, I've tested it a bit more and sent it out as a v2 now.

> > diff --git a/arch/arm/boot/dts/vexpress-v2p-ca9.dts b/arch/arm/boot/dts/vexpress-v2p-ca9.dts
> > index 623246f37448..6627e71c7283 100644
> > --- a/arch/arm/boot/dts/vexpress-v2p-ca9.dts
> > +++ b/arch/arm/boot/dts/vexpress-v2p-ca9.dts
> > @@ -81,6 +81,18 @@ vram: vram@4c000000 {
> >                         reg = <0x4c000000 0x00800000>;
> >                         no-map;
> >                 };
> > +
> > +               foo@0 {
> > +                       reg = <0x0 0x2000>;
> > +               };
> > +
> > +               bar@1000 {
> > +                       reg = <0x0 0x1000>;
> 
> 0x1000 base?

I've corrected this in the example in the commit message for v2.



[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux