[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGnOC3Y9OYZKB+7aQsDcq5pN4jJYkL8QRwXgH3jpLQkVwD-kTQ@mail.gmail.com>
Date: Thu, 13 Mar 2025 11:40:54 +0100
From: Ard Biesheuvel <ardb@...gle.com>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: linux-kbuild@...r.kernel.org, linux-kernel@...r.kernel.org,
Ard Biesheuvel <ardb+git@...gle.com>, Rasmus Villemoes <linux@...musvillemoes.dk>,
Nathan Chancellor <nathan@...nel.org>, Nicolas Schier <nicolas@...sle.eu>
Subject: Re: [PATCH] kbuild: do not generate .tmp_vmlinux*.map when CONFIG_VMLINUX_MAP=y
On Thu, Mar 13, 2025 at 11:26 AM Masahiro Yamada <masahiroy@...nel.org> wrote:
>
> Commit 5cc124720461 ("kbuild: add CONFIG_VMLINUX_MAP expert option")
> mentioned that "the .map file can be rather large (several MB), and
> that's a waste of space when one isn't interested in these things."
>
> If that is the case, generating map files for the intermediate
> tmp_vmlinux* files is also a waste of space. It is unlikely that
> anyone would be interested in the .tmp_vmlinux.map* files.
>
> This commit stops passing the -Map= option when linking the .tmp_vmlinux*
> intermediates.
>
> I also hard-coded the file name 'vmlinux.map' instead of ${output}.map
> because a later commit will introduce vmlinux.unstripped but I want to
> keep the name of the map file.
>
> Signed-off-by: Masahiro Yamada <masahiroy@...nel.org>
Acked-by: Ard Biesheuvel <ardb@...nel.org>
> ---
>
> scripts/link-vmlinux.sh | 9 +++++++--
> 1 file changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh
> index e55026128e05..7cbbfa3efbca 100755
> --- a/scripts/link-vmlinux.sh
> +++ b/scripts/link-vmlinux.sh
> @@ -98,8 +98,8 @@ vmlinux_link()
> ldflags="${ldflags} ${wl}--strip-debug"
> fi
>
> - if is_enabled CONFIG_VMLINUX_MAP; then
> - ldflags="${ldflags} ${wl}-Map=${output}.map"
> + if [ -n "${generate_map}" ]; then
> + ldflags="${ldflags} ${wl}-Map=vmlinux.map"
> fi
>
> ${ld} ${ldflags} -o ${output} \
> @@ -211,6 +211,7 @@ fi
> btf_vmlinux_bin_o=
> kallsymso=
> strip_debug=
> +generate_map=
>
> if is_enabled CONFIG_KALLSYMS; then
> true > .tmp_vmlinux0.syms
> @@ -279,6 +280,10 @@ fi
>
> strip_debug=
>
> +if is_enabled CONFIG_VMLINUX_MAP; then
> + generate_map=1
> +fi
> +
> vmlinux_link "${VMLINUX}"
>
> # fill in BTF IDs
> --
> 2.43.0
>
Powered by blists - more mailing lists