lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6bwwjyvhajytkvwumbjbj5glk27w3cqf4ylobfyhhclioypsfs@hen3m6i2cdga>
Date: Tue, 11 Feb 2025 10:45:22 -0700
From: Daniel Xu <dxu@...uu.xyz>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: Frank Binns <frank.binns@...tec.com>, 
	Matt Coster <matt.coster@...tec.com>, linux-kernel@...r.kernel.org, 
	Arnaldo Carvalho de Melo <acme@...hat.com>, Borislav Petkov <bp@...e.de>, 
	Nathan Chancellor <nathan@...nel.org>, Nicolas Schier <nicolas@...sle.eu>, bpf@...r.kernel.org, 
	linux-kbuild@...r.kernel.org
Subject: Re: [PATCH] tools: fix annoying "mkdir -p ..." logs when building
 tools in parallel

Hi Masahiro,

Thanks for looking into this! Much better than my attempt :P

On Tue, Feb 11, 2025 at 09:29:06AM +0900, Masahiro Yamada wrote:
> When CONFIG_OBJTOOL=y or CONFIG_DEBUG_INFO_BTF=y, parallel builds
> show awkward "mkdir -p ..." logs.
> 
>   $ make -j16
>     [ snip ]
>   mkdir -p /home/masahiro/ref/linux/tools/objtool && make O=/home/masahiro/ref/linux subdir=tools/objtool --no-print-directory -C objtool
>   mkdir -p /home/masahiro/ref/linux/tools/bpf/resolve_btfids && make O=/home/masahiro/ref/linux subdir=tools/bpf/resolve_btfids --no-print-directory -C bpf/resolve_btfids
> 
> Defining MAKEFLAGS=<value> on the command line wipes out command line
> switches from the resultant MAKEFLAGS definition, even though the command
> line switches are active. [1]
> 
> The first word of $(MAKEFLAGS) is a possibly empty group of characters
> representing single-letter options that take no argument. However, this
> breaks if MAKEFLAGS=<value> is given on the command line.
> 
> The tools/ and tools/% targets set MAKEFLAGS=<value> on the command
> line, which breaks the following code in tools/scripts/Makefile.include:
> 
>     short-opts := $(firstword -$(MAKEFLAGS))
> 
> If MAKEFLAGS really needs modification, it should be done through the
> environment variable, as follows:
> 
>     MAKEFLAGS=<value> $(MAKE) ...
> 
> That said, I question whether modifying MAKEFLAGS is necessary here.
> The only flag we might want to exclude is --no-print-directory, as the
> tools build system changes the working directory. However, people might
> find the "Entering/Leaving directory" logs annoying.
> 
> I simply removed the offending MAKEFLAGS=.
> 
> [1]: https://savannah.gnu.org/bugs/?62469
> 
> Fixes: a50e43332756 ("perf tools: Honor parallel jobs")
> Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>

Tested-by: Daniel Xu <dxu@...uu.xyz>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ