Masahiro Yamada
037c65990d
kbuild: avoid split lines in .mod files
...
[ Upstream commit 7d32358be8acb119dcfe39b6cf67ec6d94bf1fe7 ]
"xargs echo" is not a safe way to remove line breaks because the input
may exceed the command line limit and xargs may break it up into
multiple invocations of echo. This should never happen because
scripts/gen_autoksyms.sh expects all undefined symbols are placed in
the second line of .mod files.
One possible way is to replace "xargs echo" with
"sed ':x;N;$!bx;s/\n/ /g'" or something, but I rewrote the code by
using awk because it is more readable.
This issue was reported by Sami Tolvanen; in his Clang LTO patch set,
$(multi-used-m) is no longer an ELF object, but a thin archive that
contains LLVM bitcode files. llvm-nm prints out symbols for each
archive member separately, which results a lot of dupications, in some
places, beyond the system-defined limit.
This problem must be fixed irrespective of LTO, and we must ensure
zero possibility of having this issue.
Link: https://lkml.org/lkml/2020/12/1/1658
Reported-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-12-30 11:50:57 +01:00
..
atomic
locking/atomics: Use sed(1) instead of non-standard head(1) option
2019-06-25 10:17:07 +02:00
basic
kbuild: remove unneeded comments and code from scripts/basic/Makefile
2019-08-29 23:54:29 +09:00
coccinelle
scripts: add dummy report mode to add_namespace.cocci
2020-08-11 15:33:35 +02:00
dtc
scripts/dtc: only append to HOST_EXTRACFLAGS instead of overwriting
2020-10-07 08:01:29 +02:00
gcc-plugins
gcc-common.h: Update for GCC 10
2020-05-27 17:46:24 +02:00
gdb
scripts/gdb: fix lx-symbols 'gdb.error' while loading modules
2020-07-29 10:18:35 +02:00
genksyms
genksyms: convert to SPDX License Identifier for lex.l and parse.y
2019-09-14 11:40:13 +09:00
kconfig
kconfig: qconf: fix signal connection to invalid slots
2020-08-26 10:41:04 +02:00
ksymoops
mod
modpost: move the namespace field in Module.symvers last
2020-03-25 08:25:55 +01:00
package
kbuild: fix broken builds because of GZIP,BZIP2,LZOP variables
2020-09-03 11:27:10 +02:00
selinux
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
2019-05-30 11:26:35 -07:00
tracing
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 166
2019-05-30 11:26:39 -07:00
.gitignore
adjust_autoksyms.sh
kbuild: remove the first line of *.mod files
2019-07-18 02:19:31 +09:00
asn1_compiler.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
bin2c.c
bloat-o-meter
bootgraph.pl
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 391
2019-06-05 17:37:11 +02:00
bpf_helpers_doc.py
bpf: fix script for generating man page on BPF helpers
2019-05-13 01:12:45 +02:00
cc-can-link.sh
check_extable.sh
checkincludes.pl
checkkconfigsymbols.py
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 166
2019-05-30 11:26:39 -07:00
checkpatch.pl
checkpatch: fix the usage of capture group ( ... )
2020-09-09 19:12:37 +02:00
checkstack.pl
scripts/checkstack.pl: Fix arm64 wrong or unknown architecture
2019-06-05 02:33:10 +09:00
checksyscalls.sh
checkversion.pl
clang-version.sh
cleanfile
cleanpatch
coccicheck
config
scripts/config: allow colons in option strings for sed
2020-05-10 10:31:27 +02:00
conmakehash.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 54
2019-05-24 17:36:42 +02:00
const_structs.checkpatch
decode_stacktrace.sh
scripts/decode_stacktrace: strip basepath from all paths
2020-07-29 10:18:35 +02:00
decodecode
scripts/decodecode: fix trapping instruction formatting
2020-05-14 07:58:29 +02:00
depmod.sh
diffconfig
documentation-file-ref-check
scripts/documentation-file-ref-check: ignore output dir
2019-06-14 14:43:01 -06:00
export_report.pl
modpost: move the namespace field in Module.symvers last
2020-03-25 08:25:55 +01:00
extract-cert.c
extract-ikconfig
extract-module-sig.pl
extract-sys-certs.pl
extract-vmlinux
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 378
2019-06-05 17:37:10 +02:00
extract_xc3028.pl
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 339
2019-06-05 17:37:07 +02:00
faddr2line
file-size.sh
find-unused-docs.sh
scripts/find-unused-docs: Fix massive false positives
2020-02-11 04:35:23 -08:00
gcc-goto.sh
gcc-ld
gcc-plugin.sh
gcc-version.sh
gcc-x86_32-has-stack-protector.sh
gcc-x86_64-has-stack-protector.sh
gen_compile_commands.py
gen_compile_commands: lower the entry count threshold
2019-07-27 12:18:19 +09:00
gen_ksymdeps.sh
get_abi.pl
doc: ABI scripts: add a SPDX header file
2019-06-21 16:58:37 +02:00
get_dvb_firmware
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61
2019-05-24 17:36:45 +02:00
get_maintainer.pl
get_maintainer: add ability to skip moderated mailing lists
2019-07-16 19:23:22 -07:00
gfp-translate
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 166
2019-05-30 11:26:39 -07:00
headerdep.pl
headers_check.pl
headers_install.sh
scripts: headers_install: Exit with error on config leak
2020-06-24 17:50:33 +02:00
insert-sys-cert.c
kallsyms.c
scripts/kallsyms: fix definitely-lost memory leak
2020-01-04 19:18:23 +01:00
Kbuild.include
kbuild: improve cc-option to clean up all temporary files
2020-06-30 15:37:05 -04:00
Kconfig.include
kconfig: introduce m32-flag and m64-flag
2020-04-08 09:08:37 +02:00
kernel-doc
kernel-doc: Allow anonymous enum
2019-08-12 15:00:37 -06:00
ld-version.sh
leaking_addresses.pl
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 166
2019-05-30 11:26:39 -07:00
Lindent
link-vmlinux.sh
bpf: Support llvm-objcopy for vmlinux BTF
2020-06-17 16:40:20 +02:00
Makefile
Merge branch 'next-integrity' of git://git.kernel.org/pub/scm/linux/kernel/git/zohar/linux-integrity
2019-09-27 19:37:27 -07:00
Makefile.asm-generic
kbuild: force all architectures except um to include mandatory-y
2019-03-17 12:56:32 +09:00
Makefile.build
kbuild: avoid split lines in .mod files
2020-12-30 11:50:57 +01:00
Makefile.clean
kbuild: clean up subdir-ymn calculation in Makefile.clean
2019-08-29 23:54:29 +09:00
Makefile.dtbinst
Makefile.extrawarn
kbuild: Disable -Wpointer-to-enum-cast
2020-03-25 08:25:54 +01:00
Makefile.gcc-plugins
Makefile.headersinst
kbuild: move headers_check rule to usr/include/Makefile
2020-03-05 16:43:47 +01:00
Makefile.host
kbuild: change *FLAGS_<basetarget>.o to take the path relative to $(obj)
2019-09-04 23:12:50 +09:00
Makefile.kasan
kasan/arm64: fix CONFIG_KASAN_SW_TAGS && KASAN_INLINE
2019-08-15 13:24:04 +01:00
Makefile.kcov
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
Makefile.lib
kbuild: fix broken builds because of GZIP,BZIP2,LZOP variables
2020-09-03 11:27:10 +02:00
Makefile.modbuiltin
kbuild: get rid of kernel/ prefix from in-tree modules.{order,builtin}
2019-07-17 22:39:27 +09:00
Makefile.modfinal
kbuild: move modkern_{c,a}flags to Makefile.lib from Makefile.build
2019-08-22 01:14:11 +09:00
Makefile.modinst
kbuild: modinst: read modules.order instead of $(MODVERDIR)/*.mod
2019-07-17 22:39:27 +09:00
Makefile.modpost
Modules updates for v5.4
2019-09-22 10:34:46 -07:00
Makefile.modsign
kbuild: modsign: read modules.order instead of $(MODVERDIR)/*.mod
2019-07-17 22:39:27 +09:00
Makefile.package
kbuild: fix broken builds because of GZIP,BZIP2,LZOP variables
2020-09-03 11:27:10 +02:00
Makefile.ubsan
ubsan: Remove vla bound checks.
2019-05-06 11:12:09 -07:00
makelst
markup_oops.pl
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 373
2019-06-05 17:37:10 +02:00
mkcompile_h
Kbuild: Handle PREEMPT_RT for version string and magic
2019-08-14 01:10:42 +09:00
mkmakefile
kbuild: get rid of $(realpath ...) from scripts/mkmakefile
2019-08-29 23:54:29 +09:00
mksysmap
mksysmap: Fix the mismatch of '.L' symbols in System.map
2020-06-24 17:50:19 +02:00
mkuboot.sh
module-common.lds
modules-check.sh
kbuild: get rid of kernel/ prefix from in-tree modules.{order,builtin}
2019-07-17 22:39:27 +09:00
namespace.pl
namespace: fix namespace.pl script to support relative paths
2019-10-05 15:29:49 +09:00
nsdeps
scripts: add dummy report mode to add_namespace.cocci
2020-08-11 15:33:35 +02:00
objdiff
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 199
2019-05-30 11:29:23 -07:00
parse-maintainers.pl
parse-maintainers: Mark as executable
2020-03-25 08:25:49 +01:00
patch-kernel
pnmtologo.c
profile2linkerlist.pl
prune-kernel
recordmcount.c
recordmcount: Fix build failure on non arm64
2020-08-21 13:05:36 +02:00
recordmcount.h
recordmcount: support >64k sections
2020-06-30 15:37:05 -04:00
recordmcount.pl
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 166
2019-05-30 11:26:39 -07:00
setlocalversion
scripts/setlocalversion: make git describe output more reliable
2020-11-01 12:01:01 +01:00
show_delta
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 438
2019-06-05 17:37:17 +02:00
sign-file.c
sortextable.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 378
2019-06-05 17:37:10 +02:00
sortextable.h
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 378
2019-06-05 17:37:10 +02:00
spdxcheck-test.sh
spdxcheck.py
spdxcheck.py: fix directory structures
2019-06-01 15:51:31 -07:00
spelling.txt
scripts/spelling.txt: add more spellings to spelling.txt
2019-07-12 11:05:41 -07:00
sphinx-pre-install
scripts/sphinx-pre-install: seek for Noto CJK fonts for pdf output
2019-07-17 06:57:52 -03:00
split-man.pl
stackdelta
stackusage
subarch.include
tags.sh
kbuild: add a flag to force absolute path for srctree
2019-07-11 00:05:09 +09:00
tools-support-relr.sh
scripts/tools-support-relr.sh: un-quote variables
2019-11-13 10:52:05 +00:00
unifdef.c
ver_linux
xen-hypercalls.sh
xz_wrap.sh
kbuild: add variables for compression tools
2020-09-03 11:27:10 +02:00