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  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri,  8 Jan 2021 16:27:13 -0800
From:   Kees Cook <>
To:     Steven Rostedt <>,
        Sami Tolvanen <>,
        Will Deacon <>,
        Masahiro Yamada <>
Cc:     Kees Cook <>,,,,,
        "Paul E. McKenney" <>,
        Josh Poimboeuf <>,,
        Peter Zijlstra <>,
        Greg Kroah-Hartman <>,,
        Nick Desaulniers <>,
Subject: Re: [PATCH v9 00/16] Add support for Clang LTO

On Fri, 11 Dec 2020 10:46:17 -0800, Sami Tolvanen wrote:
> This patch series adds support for building the kernel with Clang's
> Link Time Optimization (LTO). In addition to performance, the primary
> motivation for LTO is to allow Clang's Control-Flow Integrity (CFI)
> to be used in the kernel. Google has shipped millions of Pixel
> devices running three major kernel versions with LTO+CFI since 2018.
> Most of the patches are build system changes for handling LLVM
> bitcode, which Clang produces with LTO instead of ELF object files,
> postponing ELF processing until a later stage, and ensuring initcall
> ordering.
> [...]

Applied to kspp/lto/v5.11-rc2, thanks!

I'll let 0-day grind on this over the weekend and toss it in -next on
Monday if there aren't any objections.

[01/16] tracing: move function tracer options to Kconfig
[02/16] kbuild: add support for Clang LTO
[03/16] kbuild: lto: fix module versioning
[04/16] kbuild: lto: limit inlining
[05/16] kbuild: lto: merge module sections
[06/16] kbuild: lto: add a default list of used symbols
[07/16] init: lto: ensure initcall ordering
[08/16] init: lto: fix PREL32 relocations
[09/16] PCI: Fix PREL32 relocations for LTO
[10/16] modpost: lto: strip .lto from module names
[11/16] scripts/mod: disable LTO for empty.c
[12/16] efi/libstub: disable LTO
[13/16] drivers/misc/lkdtm: disable LTO for rodata.o
[14/16] arm64: vdso: disable LTO
[15/16] arm64: disable recordmcount with DYNAMIC_FTRACE_WITH_REGS
[16/16] arm64: allow LTO to be selected

Kees Cook

Powered by blists - more mailing lists