From mboxrd@z Thu Jan 1 00:00:00 1970 From: Patrick DELAUNAY Date: Fri, 10 Jan 2020 07:58:41 +0000 Subject: [PATCH 2/2] fdtgrep: fix fdtgrep_find_regions() error with some device trees In-Reply-To: References: <20200108203516.22268-1-agust@denx.de> <20200108203516.22268-2-agust@denx.de> Message-ID: List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi, > From: U-Boot On Behalf Of Simon Glass > Sent: jeudi 9 janvier 2020 21:04 > > On Thu, 9 Jan 2020 at 09:35, Anatolij Gustschin wrote: > > > > With some device trees (i.e. i.MX6 SoC) and longer REMOVE_PROPS list > > the fdtgrep tool stops with "Internal error with fdtgrep_find_regions()". > > Increase 'max_regions' count to avoid such errors. > > > > Signed-off-by: Anatolij Gustschin > > --- > > tools/fdtgrep.c | 2 +- > > 1 file changed, 1 insertion(+), 1 deletion(-) > > Reviewed-by: Simon Glass > > Wow that's a lot. I wonder if we should adjust it to be unlimited? I see the same issue for device-tree when number of pincontrol node > 100 in SPL (only see for debug use case). But normally it is managed in the function (2 loops and re-alloc for the second loop if size > 100). But the loop is not correctly managed, I think it is a issue introduced by Commit e178db1d7736a92951fdc7f1fd9b8ecf4d2877ba fdtgrep: Fix logic of free() in do_fdtgrep() => retrun -1 added for the 1rst loop. I have locally a patch, but I don't yet upstream it.... It is done today with: "tools: ftdgrep: correct the find regions loop in do_fdtgrep" http://patchwork.ozlabs.org/project/uboot/list/?series=152371 Anatolij can you confirm that my patch correct also your issue ? Regards Patrick