linux/scripts
Ard Biesheuvel e8d56bd78b ANDROID: module: apply special LTO treatment to .text even if CFI is disabled
We currently only emit directives for handling the .text section into
the module linker script if both LTO and CFI are enabled, while for
other sections, we do this even if CFI is not enabled. This is
inconsistent at best, but as it also interferes with the assumption in
the fips140.ko module that the .text._start and .text._end input
sections are placed at the very start and end of the .text section,
which currently can only be relied upon if CFI is enabled.

So rearrange the #ifdef so that it only covers the .text.__cfi_check
input section. Note that aligning to page size is likely to be redundant
in any case, given that the .text section is laid out first, and module
allocations are page aligned to begin with, so making that part
unconditional is unlikely to make an observeable difference in the
output.

Bug: 153614920
Bug: 188620248
Fixes: 6be141eb36 ("ANDROID: crypto: fips140 - perform load time integrity check")
Change-Id: I3f9ed0ae8fa8fe5693c8d2964566cbb42c101aa7
Signed-off-by: Ard Biesheuvel <ardb@google.com>
(cherry picked from commit 6ae8277450ae86113cf7eea8b8348e509e2cc72d)
2021-10-29 13:32:13 -07:00
..
atomic
basic
clang-tools scripts/clang-tools: switch explicitly to Python 3 2021-06-03 09:00:52 +02:00
coccinelle
dtc
dummy-tools
gcc-plugins
gdb
genksyms
kconfig
ksymoops
mod
package
selinux
tracing scripts/tracing: fix the bug that can't parse raw_trace_func 2021-08-12 13:22:12 +02:00
.gitignore
adjust_autoksyms.sh
asn1_compiler.c
bin2c.c
bloat-o-meter
bootgraph.pl
bpf_helpers_doc.py
cc-can-link.sh
check_extable.sh
check-sysctl-docs
checkincludes.pl
checkkconfigsymbols.py
checkpatch.pl
checkstack.pl
checksyscalls.sh
checkversion.pl
clang-version.sh
cleanfile
cleanpatch
coccicheck
config
const_structs.checkpatch
decode_stacktrace.sh
decodecode
depmod.sh
dev-needs.sh
diffconfig
documentation-file-ref-check
export_report.pl
extract_xc3028.pl
extract-cert.c
extract-ikconfig
extract-module-sig.pl
extract-sys-certs.pl
extract-vmlinux
faddr2line
file-size.sh
find-unused-docs.sh
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_autoksyms.sh BACKPORT: kbuild: fix UNUSED_KSYMS_WHITELIST for Clang LTO 2021-06-10 20:26:11 -07:00
gen_ksymdeps.sh
generate_cfi_kallsyms.pl
generate_initcall_order.pl
get_abi.pl
get_dvb_firmware
get_maintainer.pl
gfp-translate
headerdep.pl
headers_check.pl
headers_install.sh
insert-sys-cert.c
jobserver-exec
kallsyms.c
Kbuild.include kbuild: sink stdout from cmd for silent build 2021-07-25 14:36:12 +02:00
Kconfig.include
kernel-doc
ld-version.sh
leaking_addresses.pl
Lindent
link-vmlinux.sh
lld-version.sh
Makefile certs: Add ability to preload revocation certs 2021-06-30 08:47:30 -04:00
Makefile.asm-generic
Makefile.build This is the 5.10.50 stable release 2021-07-14 17:35:23 +02:00
Makefile.clean
Makefile.dtbinst
Makefile.extrawarn
Makefile.gcc-plugins
Makefile.headersinst
Makefile.host
Makefile.kasan
Makefile.kcov
Makefile.kcsan
Makefile.lib
Makefile.modfinal
Makefile.modinst
Makefile.modpost
Makefile.modsign
Makefile.package
Makefile.ubsan UPSTREAM: ubsan: remove overflow checks 2021-10-21 08:33:13 -07:00
Makefile.userprogs
makelst
markup_oops.pl
mkcompile_h kbuild: mkcompile_h: consider timestamp if KBUILD_BUILD_TIMESTAMP is set 2021-07-25 14:36:16 +02:00
mkmakefile
mksysmap
mkuboot.sh
module.lds.S ANDROID: module: apply special LTO treatment to .text even if CFI is disabled 2021-10-29 13:32:13 -07:00
modules-check.sh
nsdeps
objdiff
parse-maintainers.pl
patch-kernel
profile2linkerlist.pl
prune-kernel
recordmcount.c
recordmcount.h recordmcount: Correct st_shndx handling 2021-06-30 08:47:23 -04:00
recordmcount.pl
setlocalversion
show_delta
sign-file.c
sorttable.c
sorttable.h
spdxcheck-test.sh
spdxcheck.py
spelling.txt
sphinx-pre-install
split-man.pl
stackdelta
stackusage
subarch.include
tags.sh
tools-support-relr.sh Makefile: fix GDB warning with CONFIG_RELR 2021-07-14 16:55:53 +02:00
unifdef.c
ver_linux
xen-hypercalls.sh
xz_wrap.sh