<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>442b15a2 - selftests/openat2: fix clang build failures: -static-libasan, LOCAL_HDRS</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/openat2/Makefile#442b15a2</link>
        <description>selftests/openat2: fix clang build failures: -static-libasan, LOCAL_HDRSWhen building with clang via:    make LLVM=1 -C tools/testing/selfteststwo distinct failures occur:1) gcc requires -static-libasan in order to ensure that AddressSanitizer&apos;s library is the first one loaded. However, this leads tobuild failures on clang, when building via:       make LLVM=1 -C tools/testing/selftestsHowever, clang already does the right thing by default: it staticallylinks the Address Sanitizer if -fsanitize is specified. Therefore, fixthis by simply omitting -static-libasan for clang builds. And leavebehind a comment, because the whole reason for static linking might notbe obvious.2) clang won&apos;t accept invocations of this form, but gcc will:    $(CC) file1.c header2.hFix this by using selftests/lib.mk facilities for tracking local headerfile dependencies: add them to LOCAL_HDRS, leaving only the .c files tobe passed to the compiler.Reviewed-by: Ryan Roberts &lt;ryan.roberts@arm.com&gt;Signed-off-by: John Hubbard &lt;jhubbard@nvidia.com&gt;Reviewed-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Reviewed-by: Nathan Chancellor &lt;nathan@kernel.org&gt;Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/openat2/Makefile</description>
        <pubDate>Sat, 01 Jun 2024 01:45:33 +0000</pubDate>
        <dc:creator>John Hubbard &lt;jhubbard@nvidia.com&gt;</dc:creator>
    </item>
<item>
        <title>c652df8a - selftests: link libasan statically for tests with -fsanitize=address</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/openat2/Makefile#c652df8a</link>
        <description>selftests: link libasan statically for tests with -fsanitize=addressWhen dynamically linking, Address Sanitizer requires its library to be thefirst one to be loaded; this is apparently to ensure that every call tomalloc is intercepted.  If using LD_PRELOAD, those listed libraries willbe loaded before the libraries listed in the program&apos;s ELF and willtherefore violate this requirement, leading to the below failure andoutput from ASan.commit 58e2847ad2e6 (&quot;selftests: line buffer test program&apos;s stdout&quot;)modified the kselftest runner to force line buffering by forcing the testprograms to run through `stdbuf`.  It turns out that stdbuf implementsline buffering by injecting a library via LD_PRELOAD.  Therefore selfteststhat use ASan started failing.Fix this by statically linking libasan in the affected test programs,using the `-static-libasan` option.  Note this is already the default forClang, but not got GCC.Test output sample for failing case:  TAP version 13  1..3  # timeout set to 300  # selftests: openat2: openat2_test  # ==4052==ASan runtime does not come first in initial library list;  you should either link runtime to your application or manually preload  it with LD_PRELOAD.  not ok 1 selftests: openat2: openat2_test # exit=1  # timeout set to 300  # selftests: openat2: resolve_test  # ==4070==ASan runtime does not come first in initial library list;  you should either link runtime to your application or manually preload  it with LD_PRELOAD.  not ok 2 selftests: openat2: resolve_test # exit=1Link: https://lkml.kernel.org/r/20230912135048.1755771-1-ryan.roberts@arm.comSigned-off-by: Ryan Roberts &lt;ryan.roberts@arm.com&gt;Fixes: 58e2847ad2e6 (&quot;selftests: line buffer test program&apos;s stdout&quot;)Reported-by: kernel test robot &lt;oliver.sang@intel.com&gt;Closes: https://lore.kernel.org/oe-lkp/202309121342.97e2f008-oliver.sang@intel.comCc: David Hildenbrand &lt;david@redhat.com&gt;Cc: Florent Revest &lt;revest@chromium.org&gt;Cc: J&#233;r&#244;me Glisse &lt;jglisse@redhat.com&gt;Cc: John Hubbard &lt;jhubbard@nvidia.com&gt;Cc: Mark Brown &lt;broonie@kernel.org&gt;Cc: Peter Xu &lt;peterx@redhat.com&gt;Cc: Shuah Khan &lt;shuah@kernel.org&gt;Cc: Tom Rix &lt;trix@redhat.com&gt;Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/openat2/Makefile</description>
        <pubDate>Tue, 12 Sep 2023 13:50:48 +0000</pubDate>
        <dc:creator>Ryan Roberts &lt;ryan.roberts@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>ea339672 - selftests: openat2: Add missing dependency in Makefile</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/openat2/Makefile#ea339672</link>
        <description>selftests: openat2: Add missing dependency in MakefileAdd a dependency on header helpers.h to the main target; while at that addto helpers.h also a missing include for bool types.Cc: Aleksa Sarai &lt;cyphar@cyphar.com&gt;Signed-off-by: Cristian Marussi &lt;cristian.marussi@arm.com&gt;Signed-off-by: Shuah Khan &lt;skhan@linuxfoundation.org&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/openat2/Makefile</description>
        <pubDate>Wed, 26 Jan 2022 10:27:22 +0000</pubDate>
        <dc:creator>Cristian Marussi &lt;cristian.marussi@arm.com&gt;</dc:creator>
    </item>
<item>
        <title>b28a10ae - selftests: add openat2(2) selftests</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/tools/testing/selftests/openat2/Makefile#b28a10ae</link>
        <description>selftests: add openat2(2) selftestsTest all of the various openat2(2) flags. A small stress-test of asymlink-rename attack is included to show that the protections against&quot;..&quot;-based attacks are sufficient.The main things these self-tests are enforcing are:  * The struct+usize ABI for openat2(2) and copy_struct_from_user() to    ensure that upgrades will be handled gracefully (in addition,    ensuring that misaligned structures are also handled correctly).  * The -EINVAL checks for openat2(2) are all correctly handled to avoid    userspace passing unknown or conflicting flag sets (most    importantly, ensuring that invalid flag combinations are checked).  * All of the RESOLVE_* semantics (including errno values) are    correctly handled with various combinations of paths and flags.  * RESOLVE_IN_ROOT correctly protects against the symlink rename(2)    attack that has been responsible for several CVEs (and likely will    be responsible for several more).Cc: Shuah Khan &lt;shuah@kernel.org&gt;Signed-off-by: Aleksa Sarai &lt;cyphar@cyphar.com&gt;Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;

            List of files:
            /linux-6.15/tools/testing/selftests/openat2/Makefile</description>
        <pubDate>Sat, 18 Jan 2020 12:08:00 +0000</pubDate>
        <dc:creator>Aleksa Sarai &lt;cyphar@cyphar.com&gt;</dc:creator>
    </item>
</channel>
</rss>
