Re: [PATCH] dt: dt-extract-compatibles: Don't follow symlinks when walking tree

From: Rob Herring
Date: Thu Nov 09 2023 - 12:57:04 EST


On Tue, 07 Nov 2023 17:55:28 -0500, Nícolas F. R. A. Prado wrote:
> The iglob function, which we use to find C source files in the kernel
> tree, always follows symbolic links. This can cause unintentional
> recursions whenever a symbolic link points to a parent directory. A
> common scenario is building the kernel with the output set to a
> directory inside the kernel tree, which will contain such a symlink.
>
> Instead of using the iglob function, use os.walk to traverse the
> directory tree, which by default doesn't follow symbolic links. fnmatch
> is then used to match the glob on the filename, as well as ignore hidden
> files (which were ignored by default with iglob).
>
> This approach runs just as fast as using iglob.
>
> Fixes: b6acf8073517 ("dt: Add a check for undocumented compatible strings in kernel")
> Reported-by: Aishwarya TCV <aishwarya.tcv@xxxxxxx>
> Closes: https://lore.kernel.org/all/e90cb52f-d55b-d3ba-3933-6cc7b43fcfbc@xxxxxxx
> Signed-off-by: Nícolas F. R. A. Prado <nfraprado@xxxxxxxxxxxxx>
>
> ---
>
> scripts/dtc/dt-extract-compatibles | 14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)
>

Applied, thanks!