Re: [PATCH] scripts/dtc: dtx_diff: fix documentation for redirect workaround

From: Frank Rowand
Date: Wed Jan 12 2022 - 14:46:51 EST


Hi Matthisas,

On 1/12/22 4:14 AM, Matthias Schiffer wrote:
> dtx_diff suggests to use <(...) syntax to pipe two inputs into it, but
> this has never worked: The /proc/self/fds/... paths passed by the shell
> will fail the `[ -f "${dtx}" ] && [ -r "${dtx}" ]` check in compile_to_dts,
> but even with this check removed, the function cannot work: hexdump will
> eat up the DTB magic, making the subsequent dtc call fail, as a pipe
> cannot be rewound.

Thanks for catching this.

I would rather just remove this first workaround entirely instead of
changing it to use 'diff'. Can you redo the patch to do the removal?

Thanks,

Frank


>
> Change the example to use `diff -u` directly.
>
> Fixes: 10eadc253ddf ("dtc: create tool to diff device trees")
> Signed-off-by: Matthias Schiffer <matthias.schiffer@xxxxxxxxxxxxxxx>
> ---
> scripts/dtc/dtx_diff | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/scripts/dtc/dtx_diff b/scripts/dtc/dtx_diff
> index d3422ee15e30..f97eb83420a4 100755
> --- a/scripts/dtc/dtx_diff
> +++ b/scripts/dtc/dtx_diff
> @@ -62,7 +62,7 @@ Otherwise DTx is treated as a dts source file (aka .dts).
> may not work since \${ARCH} is part of the include path. Two possible
> workarounds:
>
> - `basename $0` \\
> + diff -u \\
> <(ARCH=arch_of_dtx_1 `basename $0` DTx_1) \\
> <(ARCH=arch_of_dtx_2 `basename $0` DTx_2)
>
>