<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/source/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Kconfig.hardening</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>9331258bc129a007a5f10e2a2b45d1e71624d115 - security/Kconfig.hardening: Remove tautological condition from CC_HAS_RANDSTRUCT</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#9331258bc129a007a5f10e2a2b45d1e71624d115</link>
        <description>security/Kconfig.hardening: Remove tautological condition from CC_HAS_RANDSTRUCTNow that the minimum supported version of LLVM for building the kernelhas been raised to 17.0.1, the &apos;!Clang || Clang &gt;= 16&apos; dependency forCONFIG_CC_HAS_RANDSTRUCT is always true, so it can be removed.Reviewed-by: Nicolas Schier &lt;nsc@kernel.org&gt;Link: https://patch.msgid.link/20260517-bump-minimum-supported-llvm-version-to-17-v2-4-b3b8cda46bdd@kernel.orgSigned-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Mon, 18 May 2026 01:05:07 +0200</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>8ad2017578c99ba7851bca5df52f82a3ade2e603 - security/Kconfig.hardening: Remove tautological condition from FORTIFY_SOURCE</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#8ad2017578c99ba7851bca5df52f82a3ade2e603</link>
        <description>security/Kconfig.hardening: Remove tautological condition from FORTIFY_SOURCENow that the minimum supported version of LLVM for building the kernelhas been raised to 17.0.1, the &apos;!X86_32 || !Clang || Clang &gt; 16&apos;dependency of CONFIG_FORTIFY_SOURCE is always true, so it can beremoved.Reviewed-by: Nicolas Schier &lt;nsc@kernel.org&gt;Link: https://patch.msgid.link/20260517-bump-minimum-supported-llvm-version-to-17-v2-3-b3b8cda46bdd@kernel.orgSigned-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Mon, 18 May 2026 01:05:06 +0200</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>813fe686e90b433b6d13cfd157b8008825193872 - security/Kconfig.hardening: Remove tautological condition from CC_HAS_ZERO_CALL_USED_REGS</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#813fe686e90b433b6d13cfd157b8008825193872</link>
        <description>security/Kconfig.hardening: Remove tautological condition from CC_HAS_ZERO_CALL_USED_REGSNow that the minimum supported version of LLVM for building the kernelhas been raised to 17.0.1, the &apos;!Clang || Clang &gt; 15.0.6&apos; dependency forCONFIG_CC_HAS_ZERO_CALL_USED_REGS is always true, so it can be removed.Reviewed-by: Nicolas Schier &lt;nsc@kernel.org&gt;Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;Link: https://patch.msgid.link/20260517-bump-minimum-supported-llvm-version-to-17-v2-2-b3b8cda46bdd@kernel.orgSigned-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Mon, 18 May 2026 01:05:05 +0200</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>11eca92a2caebcc2b3b65ca290385ff4b0498946 - rust: add bitmap API.</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#11eca92a2caebcc2b3b65ca290385ff4b0498946</link>
        <description>rust: add bitmap API.Provides an abstraction for C bitmap API and bitops operations.This commit enables a Rust implementation of an Android Binderdata structure from commit 15d9da3f818c (&quot;binder: use bitmap for fasterdescriptor lookup&quot;), which can be found in drivers/android/dbitmap.h.It is a step towards upstreaming the Rust port of Android Binder driver.We follow the C Bitmap API closely in naming and semantics, witha few differences that take advantage of Rust language facilitiesand idioms. The main types are `BitmapVec` for owned bitmaps and`Bitmap` for references to C bitmaps.  * We leverage Rust type system guarantees as follows:    * all (non-atomic) mutating operations require a &amp;mut reference which      amounts to exclusive access.    * the `BitmapVec` type implements Send. This enables transferring      ownership between threads and is needed for Binder.    * the `BitmapVec` type implements Sync, which enables passing shared      references &amp;Bitmap between threads. Atomic operations can be      used to safely modify from multiple threads (interior      mutability), though without ordering guarantees.  * The Rust API uses `{set,clear}_bit` vs `{set,clear}_bit_atomic` as    names for clarity, which differs from the C naming convention    `set_bit` for atomic vs `__set_bit` for non-atomic.  * we include enough operations for the API to be useful. Not all    operations are exposed yet in order to avoid dead code. The missing    ones can be added later.  * We take a fine-grained approach to safety:    * Low-level bit-ops get a safe API with bounds checks. Calling with      an out-of-bounds arguments to {set,clear}_bit becomes a no-op and      get logged as errors.    * We also introduce a RUST_BITMAP_HARDENED config, which      causes invocations with out-of-bounds arguments to panic.    * methods correspond to find_* C methods tolerate out-of-bounds      since the C implementation does. Also here, out-of-bounds      arguments are logged as errors, or panic in RUST_BITMAP_HARDENED      mode.    * We add a way to &quot;borrow&quot; bitmaps from C in Rust, to make C bitmaps      that were allocated in C directly usable in Rust code (`Bitmap`).  * the Rust API is optimized to represent the bitmap inline if it would    fit into a pointer. This saves allocations which is    relevant in the Binder use case.The underlying C bitmap is *not* exposed for raw access in Rust. Doing sowould permit bypassing the Rust API and lose static guarantees.An alternative route of vendoring an existing Rust bitmap package wasconsidered but suboptimal overall. Reusing the C implementation ispreferable for a basic data structure like bitmaps. It enables Rustcode to be a lot more similar and predictable with respect to C codethat uses the same data structures and enables the use of code thathas been tried-and-tested in the kernel, with the same performancecharacteristics whenever possible.We use the `usize` type for sizes and indices into the bitmap,because Rust generally always uses that type for indices and lengthsand it will be more convenient if the API accepts that type. This meansthat we need to perform some casts to/from u32 and usize, since the Cheaders use unsigned int instead of size_t/unsigned long for thesenumbers in some places.Adds new MAINTAINERS section BITMAP API [RUST].Suggested-by: Alice Ryhl &lt;aliceryhl@google.com&gt;Suggested-by: Yury Norov &lt;yury.norov@gmail.com&gt;Signed-off-by: Burak Emir &lt;bqe@google.com&gt;Reviewed-by: Alice Ryhl &lt;aliceryhl@google.com&gt;Signed-off-by: Yury Norov (NVIDIA) &lt;yury.norov@gmail.com&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Mon, 08 Sep 2025 09:21:53 +0200</pubDate>
        <dc:creator>Burak Emir &lt;bqe@google.com&gt;</dc:creator>
    </item>
<item>
        <title>a8f0b1f8ef628bd1003eed650862836e97b89fdd - kstack_erase: Support Clang stack depth tracking</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#a8f0b1f8ef628bd1003eed650862836e97b89fdd</link>
        <description>kstack_erase: Support Clang stack depth trackingWire up CONFIG_KSTACK_ERASE to Clang 21&apos;s new stack depth trackingcallback[1] option.Link: https://clang.llvm.org/docs/SanitizerCoverage.html#tracing-stack-depth [1]Acked-by: Nicolas Schier &lt;n.schier@avm.de&gt;Link: https://lore.kernel.org/r/20250724055029.3623499-4-kees@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Thu, 24 Jul 2025 07:50:28 +0200</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>9ea1e8d28add49ab3c1ecfa43f08d92ee23f3e33 - stackleak: Rename stackleak_track_stack to __sanitizer_cov_stack_depth</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#9ea1e8d28add49ab3c1ecfa43f08d92ee23f3e33</link>
        <description>stackleak: Rename stackleak_track_stack to __sanitizer_cov_stack_depthThe Clang stack depth tracking implementation has a fixed name forthe stack depth tracking callback, &quot;__sanitizer_cov_stack_depth&quot;, sorename the GCC plugin function to match since the plugin has no externaldependencies on naming.Link: https://lore.kernel.org/r/20250717232519.2984886-2-kees@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Fri, 18 Jul 2025 01:25:07 +0200</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>57fbad15c2eee77276a541c616589b32976d2b8e - stackleak: Rename STACKLEAK to KSTACK_ERASE</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#57fbad15c2eee77276a541c616589b32976d2b8e</link>
        <description>stackleak: Rename STACKLEAK to KSTACK_ERASEIn preparation for adding Clang sanitizer coverage stack depth trackingthat can support stack depth callbacks:- Add the new top-level CONFIG_KSTACK_ERASE option which will be  implemented either with the stackleak GCC plugin, or with the Clang  stack depth callback support.- Rename CONFIG_GCC_PLUGIN_STACKLEAK as needed to CONFIG_KSTACK_ERASE,  but keep it for anything specific to the GCC plugin itself.- Rename all exposed &quot;STACKLEAK&quot; names and files to &quot;KSTACK_ERASE&quot; (named  for what it does rather than what it protects against), but leave as  many of the internals alone as possible to avoid even more churn.While here, also split &quot;prev_lowest_stack&quot; into CONFIG_KSTACK_ERASE_METRICS,since that&apos;s the only place it is referenced from.Suggested-by: Ingo Molnar &lt;mingo@kernel.org&gt;Link: https://lore.kernel.org/r/20250717232519.2984886-1-kees@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Fri, 18 Jul 2025 01:25:06 +0200</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>dee264c16a6334dcdbea5c186f5ff35f98b1df42 - Merge tag &apos;gcc-minimum-version-6.16&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#dee264c16a6334dcdbea5c186f5ff35f98b1df42</link>
        <description>Merge tag &apos;gcc-minimum-version-6.16&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-genericPull compiler version requirement update from Arnd Bergmann: &quot;Require gcc-8 and binutils-2.30  x86 already uses gcc-8 as the minimum version, this changes all other  architectures to the same version. gcc-8 is used is Debian 10 and Red  Hat Enterprise Linux 8, both of which are still supported, and  binutils 2.30 is the oldest corresponding version on those.  Ubuntu Pro 18.04 and SUSE Linux Enterprise Server 15 both use gcc-7 as  the system compiler but additionally include toolchains that remain  supported.  With the new minimum toolchain versions, a number of workarounds for  older versions can be dropped, in particular on x86_64 and arm64.  Importantly, the updated compiler version allows removing two of the  five remaining gcc plugins, as support for sancov and structeak  features is already included in modern compiler versions.  I tried collecting the known changes that are possible based on the  new toolchain version, but expect that more cleanups will be possible.  Since this touches multiple architectures, I merged the patches  through the asm-generic tree.&quot;* tag &apos;gcc-minimum-version-6.16&apos; of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/asm-generic:  Makefile.kcov: apply needed compiler option unconditionally in CFLAGS_KCOV  Documentation: update binutils-2.30 version reference  gcc-plugins: remove SANCOV gcc plugin  Kbuild: remove structleak gcc plugin  arm64: drop binutils version checks  raid6: skip avx512 checks  kbuild: require gcc-8 and binutils-2.30

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Sat, 31 May 2025 17:16:52 +0200</pubDate>
        <dc:creator>Linus Torvalds &lt;torvalds@linux-foundation.org&gt;</dc:creator>
    </item>
<item>
        <title>f0cd6012c40da99b45f8f63052b97ec89d5f307b - Revert &quot;hardening: Disable GCC randstruct for COMPILE_TEST&quot;</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#f0cd6012c40da99b45f8f63052b97ec89d5f307b</link>
        <description>Revert &quot;hardening: Disable GCC randstruct for COMPILE_TEST&quot;This reverts commit f5c68a4e84f9feca3be578199ec648b676db2030.It is again possible to build &quot;allmodconfig&quot; with the randstruct GCCplugin, so enable it for COMPILE_TEST to catch future bugs.Signed-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Sat, 26 Apr 2025 09:37:55 +0200</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>8530ea3c9b9747faba46ed3a59ad103b894f1189 - Kbuild: remove structleak gcc plugin</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#8530ea3c9b9747faba46ed3a59ad103b894f1189</link>
        <description>Kbuild: remove structleak gcc plugingcc-12 and higher support the -ftrivial-auto-var-init= flag, aftergcc-8 is the minimum version, this is half of the supported ones, andthe vast majority of the versions that users are actually likely tohave, so it seems like a good time to stop having the fallbackplugin implementationOlder toolchains are still able to build kernels normally withoutthis plugin, but won&apos;t be able to use variable initialization..Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Mon, 07 Apr 2025 21:21:14 +0200</pubDate>
        <dc:creator>Arnd Bergmann &lt;arnd@arndb.de&gt;</dc:creator>
    </item>
<item>
        <title>f5c68a4e84f9feca3be578199ec648b676db2030 - hardening: Disable GCC randstruct for COMPILE_TEST</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#f5c68a4e84f9feca3be578199ec648b676db2030</link>
        <description>hardening: Disable GCC randstruct for COMPILE_TESTThere is a GCC crash bug in the randstruct for latest GCC versions thatis being tickled by landlock[1]. Temporarily disable GCC randstruct forCOMPILE_TEST builds to unbreak CI systems for the coming -rc2. This canbe restored once the bug is fixed.Suggested-by: Mark Brown &lt;broonie@kernel.org&gt;Link: https://lore.kernel.org/all/20250407-kbuild-disable-gcc-plugins-v1-1-5d46ae583f5e@kernel.org/ [1]Acked-by: Mark Brown &lt;broonie@kernel.org&gt;Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;Link: https://lore.kernel.org/r/20250409151154.work.872-kees@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Wed, 09 Apr 2025 17:11:58 +0200</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>d70da12453ac3797e0c54884305ccc894e8c817b - hardening: Enable i386 FORTIFY_SOURCE on Clang 16+</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#d70da12453ac3797e0c54884305ccc894e8c817b</link>
        <description>hardening: Enable i386 FORTIFY_SOURCE on Clang 16+The i386 regparm bug exposed with FORTIFY_SOURCE with Clang was fixedin Clang 16[1].Link: https://github.com/llvm/llvm-project/commit/c167c0a4dcdb998affb2756ce76903a12f7d8ca5 [1]Reviewed-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Link: https://lore.kernel.org/r/20250308042929.1753543-2-kees@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Sat, 08 Mar 2025 05:29:26 +0100</pubDate>
        <dc:creator>Kees Cook &lt;kees@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>ca758b147e75f4b564225065d70b6526477185ce - fortify: Move FORTIFY_SOURCE under &apos;Kernel hardening options&apos;</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#ca758b147e75f4b564225065d70b6526477185ce</link>
        <description>fortify: Move FORTIFY_SOURCE under &apos;Kernel hardening options&apos;FORTIFY_SOURCE is a hardening option both at build and runtime. Moveit under &apos;Kernel hardening options&apos;.Signed-off-by: Mel Gorman &lt;mgorman@techsingularity.net&gt;Acked-by: Paul Moore &lt;paul@paul-moore.com&gt;Link: https://lore.kernel.org/r/20250123221115.19722-5-mgorman@techsingularity.netSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Thu, 23 Jan 2025 23:11:15 +0100</pubDate>
        <dc:creator>Mel Gorman &lt;mgorman@techsingularity.net&gt;</dc:creator>
    </item>
<item>
        <title>d2132f453e3308adc82ab7c101bd5220a9a34167 - mm: security: Allow default HARDENED_USERCOPY to be set at compile time</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#d2132f453e3308adc82ab7c101bd5220a9a34167</link>
        <description>mm: security: Allow default HARDENED_USERCOPY to be set at compile timeHARDENED_USERCOPY defaults to on if enabled at compile time. Allowhardened_usercopy= default to be set at compile time similar toinit_on_alloc= and init_on_free=. The intent is that hardeningoptions that can be disabled at runtime can set their default atbuild time.Signed-off-by: Mel Gorman &lt;mgorman@techsingularity.net&gt;Link: https://lore.kernel.org/r/20250123221115.19722-3-mgorman@techsingularity.netSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Thu, 23 Jan 2025 23:11:13 +0100</pubDate>
        <dc:creator>Mel Gorman &lt;mgorman@techsingularity.net&gt;</dc:creator>
    </item>
<item>
        <title>f4d4e8b9d6afe880a855e919c4ba4139455e11db - mm: security: Move hardened usercopy under &apos;Kernel hardening options&apos;</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#f4d4e8b9d6afe880a855e919c4ba4139455e11db</link>
        <description>mm: security: Move hardened usercopy under &apos;Kernel hardening options&apos;There is a submenu for &apos;Kernel hardening options&apos; under &quot;Security&quot;.Move HARDENED_USERCOPY under the hardening options as it is clearlyrelated.Signed-off-by: Mel Gorman &lt;mgorman@techsingularity.net&gt;Acked-by: Paul Moore &lt;paul@paul-moore.com&gt;Link: https://lore.kernel.org/r/20250123221115.19722-2-mgorman@techsingularity.netSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Thu, 23 Jan 2025 23:11:12 +0100</pubDate>
        <dc:creator>Mel Gorman &lt;mgorman@techsingularity.net&gt;</dc:creator>
    </item>
<item>
        <title>a9a5e0bdc5a77a7c662ad4be0ad661f0b0d5e99d - hardening: Document INIT_STACK_ALL_PATTERN behavior with GCC</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#a9a5e0bdc5a77a7c662ad4be0ad661f0b0d5e99d</link>
        <description>hardening: Document INIT_STACK_ALL_PATTERN behavior with GCCThe help text for INIT_STACK_ALL_PATTERN documents the patterns used byClang, but lacks documentation for GCC.Signed-off-by: Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;Link: https://lore.kernel.org/r/293d29d6a0d1823165be97285c1bc73e90ee9db8.1736239070.git.geert+renesas@glider.beSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Tue, 07 Jan 2025 09:38:57 +0100</pubDate>
        <dc:creator>Geert Uytterhoeven &lt;geert+renesas@glider.be&gt;</dc:creator>
    </item>
<item>
        <title>dd3a7ee91e0ce0b03d22e974a79e8247cc99959b - hardening: Adjust dependencies in selection of MODVERSIONS</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#dd3a7ee91e0ce0b03d22e974a79e8247cc99959b</link>
        <description>hardening: Adjust dependencies in selection of MODVERSIONSMODVERSIONS recently grew a dependency on !COMPILE_TEST so that Rustcould be more easily tested. However, this introduces a Kconfig warningwhen building allmodconfig with a clang version that supports RANDSTRUCTnatively because RANDSTRUCT_FULL and RANDSTRUCT_PERFORMANCE selectMODVERSIONS when MODULES is enabled, bypassing the !COMPILE_TESTdependency:  WARNING: unmet direct dependencies detected for MODVERSIONS    Depends on [n]: MODULES [=y] &amp;&amp; !COMPILE_TEST [=y]    Selected by [y]:    - RANDSTRUCT_FULL [=y] &amp;&amp; (CC_HAS_RANDSTRUCT [=y] || GCC_PLUGINS [=n]) &amp;&amp; MODULES [=y]Add the !COMPILE_TEST dependency to the selections to clear up thewarning.Fixes: 1f9c4a996756 (&quot;Kbuild: make MODVERSIONS support depend on not being a compile test build&quot;)Signed-off-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Link: https://lore.kernel.org/r/20240928-fix-randstruct-modversions-kconfig-warning-v1-1-27d3edc8571e@kernel.orgSigned-off-by: Kees Cook &lt;kees@kernel.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Sat, 28 Sep 2024 20:13:13 +0200</pubDate>
        <dc:creator>Nathan Chancellor &lt;nathan@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>384a746bb55960aa5ffb3a67de08f11fc2f51042 - Revert &quot;mm: init_mlocked_on_free_v3&quot;</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#384a746bb55960aa5ffb3a67de08f11fc2f51042</link>
        <description>Revert &quot;mm: init_mlocked_on_free_v3&quot;There was insufficient review and no agreement that this is the rightapproach.There are serious flaws with the implementation that make processes usingmlock() not even work with simple fork() [1] and we get reliable crasheswhen rebooting.Further, simply because we might be unmapping a single PTE of a largemlocked folio, we shouldn&apos;t zero out the whole folio.... especially because the code can also *corrupt* urelated memory because	kernel_init_pages(page, folio_nr_pages(folio));Could end up writing outside of the actual folio if we work with a tailpage.Let&apos;s revert it.  Once there is agreement that this is the right approach,the issues were fixed and there was reasonable review and proper testing,we can consider it again.[1] https://lkml.kernel.org/r/4da9da2f-73e4-45fd-b62f-a8a513314057@redhat.comLink: https://lkml.kernel.org/r/20240605091710.38961-1-david@redhat.comFixes: ba42b524a040 (&quot;mm: init_mlocked_on_free_v3&quot;)Signed-off-by: David Hildenbrand &lt;david@redhat.com&gt;Reported-by: David Wang &lt;00107082@163.com&gt;Closes: https://lore.kernel.org/lkml/20240528151340.4282-1-00107082@163.com/Reported-by: Lance Yang &lt;ioworker0@gmail.com&gt;Closes: https://lkml.kernel.org/r/20240601140917.43562-1-ioworker0@gmail.comAcked-by: Lance Yang &lt;ioworker0@gmail.com&gt;Cc: York Jasper Niebuhr &lt;yjnworkstation@gmail.com&gt;Cc: Matthew Wilcox (Oracle) &lt;willy@infradead.org&gt;Cc: Kees Cook &lt;keescook@chromium.org&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Wed, 05 Jun 2024 11:17:10 +0200</pubDate>
        <dc:creator>David Hildenbrand &lt;david@redhat.com&gt;</dc:creator>
    </item>
<item>
        <title>ba42b524a0408b5f92bd41edaee1ea84309ab9ae - mm: init_mlocked_on_free_v3</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#ba42b524a0408b5f92bd41edaee1ea84309ab9ae</link>
        <description>mm: init_mlocked_on_free_v3Implements the &quot;init_mlocked_on_free&quot; boot option. When this boot optionis enabled, any mlock&apos;ed pages are zeroed on free. Ifthe pages are munlock&apos;ed beforehand, no initialization takes place.This boot option is meant to combat the performance hit of&quot;init_on_free&quot; as reported in commit 6471384af2a6 (&quot;mm: security:introduce init_on_alloc=1 and init_on_free=1 boot options&quot;). With&quot;init_mlocked_on_free=1&quot; only relevant data is freed while everythingelse is left untouched by the kernel. Correspondingly, this patchintroduces no performance hit for unmapping non-mlock&apos;ed memory. Theunmapping overhead for purely mlocked memory was measured to beapproximately 13%. Realistically, most systems mlock only a fraction ofthe total memory so the real-world system overhead should be close tozero.Optimally, userspace programs clear any key material or otherconfidential memory before exit and munlock the according memoryregions. If a program crashes, userspace key managers fail to do thisjob. Accordingly, no munlock operations are performed so the data iscaught and zeroed by the kernel. Should the program not crash, allmemory will ideally be munlocked so no overhead is caused.CONFIG_INIT_MLOCKED_ON_FREE_DEFAULT_ON can be set to enable&quot;init_mlocked_on_free&quot; by default.Link: https://lkml.kernel.org/r/20240329145605.149917-1-yjnworkstation@gmail.comSigned-off-by: York Jasper Niebuhr &lt;yjnworkstation@gmail.com&gt;Cc: Matthew Wilcox (Oracle) &lt;willy@infradead.org&gt;Cc: York Jasper Niebuhr &lt;yjnworkstation@gmail.com&gt;Cc: Kees Cook &lt;keescook@chromium.org&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Fri, 29 Mar 2024 15:56:05 +0100</pubDate>
        <dc:creator>York Jasper Niebuhr &lt;yjnworkstation@gmail.com&gt;</dc:creator>
    </item>
<item>
        <title>aa9f10d57056cea51d41283d3785bccbbb9f459e - hardening: Move BUG_ON_DATA_CORRUPTION to hardening options</title>
        <link>http://kernelsources.org:8080/source/history/linux/security/Kconfig.hardening#aa9f10d57056cea51d41283d3785bccbbb9f459e</link>
        <description>hardening: Move BUG_ON_DATA_CORRUPTION to hardening optionsBUG_ON_DATA_CORRUPTION is turning detected corruptions of list datastructures from WARNings into BUGs. This can be useful to stop furthercorruptions or even exploitation attempts.However, the option has less to do with debugging than with hardening.With the introduction of LIST_HARDENED, it makes more sense to move itto the hardening options, where it selects LIST_HARDENED instead.Without this change, combining BUG_ON_DATA_CORRUPTION with LIST_HARDENEDalone wouldn&apos;t be possible, because DEBUG_LIST would always be selectedby BUG_ON_DATA_CORRUPTION.Signed-off-by: Marco Elver &lt;elver@google.com&gt;Link: https://lore.kernel.org/r/20230811151847.1594958-4-elver@google.comSigned-off-by: Kees Cook &lt;keescook@chromium.org&gt;

            List of files:
            /linux/security/Kconfig.hardening</description>
        <pubDate>Fri, 11 Aug 2023 17:18:41 +0200</pubDate>
        <dc:creator>Marco Elver &lt;elver@google.com&gt;</dc:creator>
    </item>
</channel>
</rss>
