<?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>7f7f6f7a - Makefile: remove redundant tool coverage variables</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#7f7f6f7a</link>
        <description>Makefile: remove redundant tool coverage variablesNow Kbuild provides reasonable defaults for objtool, sanitizers, andprofilers.Remove redundant variables.Note:This commit changes the coverage for some objects:  - include arch/mips/vdso/vdso-image.o into UBSAN, GCOV, KCOV  - include arch/sparc/vdso/vdso-image-*.o into UBSAN  - include arch/sparc/vdso/vma.o into UBSAN  - include arch/x86/entry/vdso/extable.o into KASAN, KCSAN, UBSAN, GCOV, KCOV  - include arch/x86/entry/vdso/vdso-image-*.o into KASAN, KCSAN, UBSAN, GCOV, KCOV  - include arch/x86/entry/vdso/vdso32-setup.o into KASAN, KCSAN, UBSAN, GCOV, KCOV  - include arch/x86/entry/vdso/vma.o into GCOV, KCOV  - include arch/x86/um/vdso/vma.o into KASAN, GCOV, KCOVI believe these are positive effects because all of them are kernelspace objects.Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Reviewed-by: Kees Cook &lt;keescook@chromium.org&gt;Tested-by: Roberto Sassu &lt;roberto.sassu@huawei.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Mon, 06 May 2024 13:35:43 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>b1992c37 - kbuild: use $(src) instead of $(srctree)/$(src) for source directory</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#b1992c37</link>
        <description>kbuild: use $(src) instead of $(srctree)/$(src) for source directoryKbuild conventionally uses $(obj)/ for generated files, and $(src)/ forchecked-in source files. It is merely a convention without any functionaldifference. In fact, $(obj) and $(src) are exactly the same, as definedin scripts/Makefile.build:    src := $(obj)When the kernel is built in a separate output directory, $(src) doesnot accurately reflect the source directory location. While Kbuildresolves this discrepancy by specifying VPATH=$(srctree) to search forsource files, it does not cover all cases. For example, when adding aheader search path for local headers, -I$(srctree)/$(src) is typicallypassed to the compiler.This introduces inconsistency between upstream and downstream Makefilesbecause $(src) is used instead of $(srctree)/$(src) for the latter.To address this inconsistency, this commit changes the semantics of$(src) so that it always points to the directory in the source tree.Going forward, the variables used in Makefiles will have the followingmeanings:  $(obj)     - directory in the object tree  $(src)     - directory in the source tree  (changed by this commit)  $(objtree) - the top of the kernel object tree  $(srctree) - the top of the kernel source treeConsequently, $(srctree)/$(src) in upstream Makefiles need to be replacedwith $(src).Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Reviewed-by: Nicolas Schier &lt;nicolas@fjasle.eu&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Sat, 27 Apr 2024 14:55:02 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>7115ff4a - riscv: compat_vdso: align VDSOAS build log</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#7115ff4a</link>
        <description>riscv: compat_vdso: align VDSOAS build logAdd one more space after &quot;VDSOAS&quot; for better alignment in the build log.[Before]  LDS     arch/riscv/kernel/compat_vdso/compat_vdso.lds  VDSOAS arch/riscv/kernel/compat_vdso/rt_sigreturn.o  VDSOAS arch/riscv/kernel/compat_vdso/getcpu.o  VDSOAS arch/riscv/kernel/compat_vdso/flush_icache.o  VDSOAS arch/riscv/kernel/compat_vdso/note.o  VDSOLD  arch/riscv/kernel/compat_vdso/compat_vdso.so.dbg  VDSOSYM include/generated/compat_vdso-offsets.h[After]  LDS     arch/riscv/kernel/compat_vdso/compat_vdso.lds  VDSOAS  arch/riscv/kernel/compat_vdso/rt_sigreturn.o  VDSOAS  arch/riscv/kernel/compat_vdso/getcpu.o  VDSOAS  arch/riscv/kernel/compat_vdso/flush_icache.o  VDSOAS  arch/riscv/kernel/compat_vdso/note.o  VDSOLD  arch/riscv/kernel/compat_vdso/compat_vdso.so.dbg  VDSOSYM include/generated/compat_vdso-offsets.hSigned-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Reviewed-by: Alexandre Ghiti &lt;alexghiti@rivosinc.com&gt;Link: https://lore.kernel.org/r/20231117125843.1058553-1-masahiroy@kernel.orgSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Fri, 17 Nov 2023 12:58:43 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>56769ba4 - kbuild: unify vdso_install rules</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#56769ba4</link>
        <description>kbuild: unify vdso_install rulesCurrently, there is no standard implementation for vdso_install,leading to various issues: 1. Code duplication    Many architectures duplicate similar code just for copying files    to the install destination.    Some architectures (arm, sparc, x86) create build-id symlinks,    introducing more code duplication. 2. Unintended updates of in-tree build artifacts    The vdso_install rule depends on the vdso files to install.    It may update in-tree build artifacts. This can be problematic,    as explained in commit 19514fc665ff (&quot;arm, kbuild: make    &quot;make install&quot; not depend on vmlinux&quot;). 3. Broken code in some architectures    Makefile code is often copied from one architecture to another    without proper adaptation.    &apos;make vdso_install&apos; for parisc does not work.    &apos;make vdso_install&apos; for s390 installs vdso64, but not vdso32.To address these problems, this commit introduces a generic vdso_installrule.Architectures that support vdso_install need to define vdso-install-yin arch/*/Makefile. vdso-install-y lists the files to install.For example, arch/x86/Makefile looks like this:  vdso-install-$(CONFIG_X86_64)           += arch/x86/entry/vdso/vdso64.so.dbg  vdso-install-$(CONFIG_X86_X32_ABI)      += arch/x86/entry/vdso/vdsox32.so.dbg  vdso-install-$(CONFIG_X86_32)           += arch/x86/entry/vdso/vdso32.so.dbg  vdso-install-$(CONFIG_IA32_EMULATION)   += arch/x86/entry/vdso/vdso32.so.dbgThese files will be installed to $(MODLIB)/vdso/ with the .dbg suffix,if exists, stripped away.vdso-install-y can optionally take the second field after the colonseparator. This is needed because some architectures install a vdsofile as a different base name.The following is a snippet from arch/arm64/Makefile.  vdso-install-$(CONFIG_COMPAT_VDSO)      += arch/arm64/kernel/vdso32/vdso.so.dbg:vdso32.soThis will rename vdso.so.dbg to vdso32.so during installation. If sucharchitectures change their implementation so that the base names match,this workaround will go away.Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Acked-by: Sven Schnelle &lt;svens@linux.ibm.com&gt; # s390Reviewed-by: Nicolas Schier &lt;nicolas@fjasle.eu&gt;Reviewed-by: Guo Ren &lt;guoren@kernel.org&gt;Acked-by: Helge Deller &lt;deller@gmx.de&gt;  # pariscAcked-by: Catalin Marinas &lt;catalin.marinas@arm.com&gt;Acked-by: Russell King (Oracle) &lt;rmk+kernel@armlinux.org.uk&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Sat, 14 Oct 2023 10:54:35 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>ca09f772 - riscv: Handle zicsr/zifencei issue between gcc and binutils</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#ca09f772</link>
        <description>riscv: Handle zicsr/zifencei issue between gcc and binutilsBinutils-2.38 and GCC-12.1.0 bumped[0][1] the default ISA spec to the newer20191213 version which moves some instructions from the I extension to theZicsr and Zifencei extensions. So if one of the binutils and GCC exceedsthat version, we should explicitly specifying Zicsr and Zifencei via -marchto cope with the new changes. but this only occurs when binutils &gt;= 2.36and GCC &gt;= 11.1.0. It&apos;s a different story when binutils &lt; 2.36.binutils-2.36 supports the Zifencei extension[2] and splits Zifencei andZicsr from I[3]. GCC-11.1.0 is particular[4] because it add support Zicsrand Zifencei extension for -march. binutils-2.35 does not support theZifencei extension, and does not need to specify Zicsr and Zifencei whenworking with GCC &gt;= 12.1.0.To make our lives easier, let&apos;s relax the check to binutils &gt;= 2.36 inCONFIG_TOOLCHAIN_NEEDS_EXPLICIT_ZICSR_ZIFENCEI. For the other two cases,where clang &lt; 17 or GCC &lt; 11.1.0, we will deal with them inCONFIG_TOOLCHAIN_NEEDS_OLD_ISA_SPEC.For more information, please refer to:commit 6df2a016c0c8 (&quot;riscv: fix build with binutils 2.38&quot;)commit e89c2e815e76 (&quot;riscv: Handle zicsr/zifencei issues between clang and binutils&quot;)Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=aed44286efa8ae8717a77d94b51ac3614e2ca6dc [0]Link: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=98416dbb0a62579d4a7a4a76bab51b5b52fec2cd [1]Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=5a1b31e1e1cee6e9f1c92abff59cdcfff0dddf30 [2]Link: https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=729a53530e86972d1143553a415db34e6e01d5d2 [3]Link: https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=b03be74bad08c382da47e048007a78fa3fb4ef49 [4]Link: https://lore.kernel.org/all/20230308220842.1231003-1-conor@kernel.orgLink: https://lore.kernel.org/all/20230223220546.52879-1-conor@kernel.orgReviewed-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;Acked-by: Guo Ren &lt;guoren@kernel.org&gt;Cc: &lt;stable@vger.kernel.org&gt;Signed-off-by: Mingzheng Xing &lt;xingmingzheng@iscas.ac.cn&gt;Link: https://lore.kernel.org/r/20230809165648.21071-1-xingmingzheng@iscas.ac.cnSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Wed, 09 Aug 2023 16:56:48 +0000</pubDate>
        <dc:creator>Mingzheng Xing &lt;xingmingzheng@iscas.ac.cn&gt;</dc:creator>
    </item>
<item>
        <title>aa5af0aa - RISC-V: Add hwprobe vDSO function and data</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#aa5af0aa</link>
        <description>RISC-V: Add hwprobe vDSO function and dataAdd a vDSO function __vdso_riscv_hwprobe, which can sit in front of theriscv_hwprobe syscall and answer common queries. We stash a copy ofstatic answers for the &quot;all CPUs&quot; case in the vDSO data page. This datais private to the vDSO, so we can decide later to change what&apos;s storedthere or under what conditions we defer to the syscall. Currently alldata can be discovered at boot, so the vDSO function answers all querieswhen the cpumask is set to the &quot;all CPUs&quot; hint.There&apos;s also a boolean in the data that lets the vDSO function know thatall CPUs are the same. In that case, the vDSO will also answer queriesfor arbitrary CPU masks in addition to the &quot;all CPUs&quot; hint.Signed-off-by: Evan Green &lt;evan@rivosinc.com&gt;Link: https://lore.kernel.org/r/20230407231103.2622178-7-evan@rivosinc.comSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Fri, 07 Apr 2023 23:11:03 +0000</pubDate>
        <dc:creator>Evan Green &lt;evan@rivosinc.com&gt;</dc:creator>
    </item>
<item>
        <title>e18048da - RISC-V: Stop emitting attributes</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#e18048da</link>
        <description>RISC-V: Stop emitting attributesThe RISC-V ELF attributes don&apos;t contain any useful information.  Newtoolchains ignore them, but they frequently trip up various older/mixedtoolchains.  So just turn them off.Tested-by: Conor Dooley &lt;conor.dooley@microchip.com&gt;Link: https://lore.kernel.org/r/20230223224605.6995-1-palmer@rivosinc.comCc: stable@vger.kernel.orgSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Thu, 23 Feb 2023 22:46:05 +0000</pubDate>
        <dc:creator>Palmer Dabbelt &lt;palmer@rivosinc.com&gt;</dc:creator>
    </item>
<item>
        <title>0715372a - riscv: compat: vdso: Add COMPAT_VDSO base code implementation</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/riscv/kernel/compat_vdso/Makefile#0715372a</link>
        <description>riscv: compat: vdso: Add COMPAT_VDSO base code implementationThere is no vgettimeofday supported in rv32 that makes simple togenerate rv32 vdso code which only needs riscv64 compiler. Otherarchitectures need change compiler or -m (machine parameter) tosupport vdso32 compiling. If rv32 support vgettimeofday (whichcause C compile) in future, we would add CROSS_COMPILE to supportthat makes more requirement on compiler enviornment.linux-rv64/arch/riscv/kernel/compat_vdso/compat_vdso.so.dbg:file format elf64-littleriscvDisassembly of section .text:0000000000000800 &lt;__vdso_rt_sigreturn&gt;: 800:   08b00893                li      a7,139 804:   00000073                ecall 808:   0000                    unimp        ...000000000000080c &lt;__vdso_getcpu&gt;: 80c:   0a800893                li      a7,168 810:   00000073                ecall 814:   8082                    ret        ...0000000000000818 &lt;__vdso_flush_icache&gt;: 818:   10300893                li      a7,259 81c:   00000073                ecall 820:   8082                    retlinux-rv32/arch/riscv/kernel/vdso/vdso.so.dbg:file format elf32-littleriscvDisassembly of section .text:00000800 &lt;__vdso_rt_sigreturn&gt;: 800:   08b00893                li      a7,139 804:   00000073                ecall 808:   0000                    unimp        ...0000080c &lt;__vdso_getcpu&gt;: 80c:   0a800893                li      a7,168 810:   00000073                ecall 814:   8082                    ret        ...00000818 &lt;__vdso_flush_icache&gt;: 818:   10300893                li      a7,259 81c:   00000073                ecall 820:   8082                    retFinally, reuse all *.S from vdso in compat_vdso that makesimplementation clear and readable.Signed-off-by: Guo Ren &lt;guoren@linux.alibaba.com&gt;Signed-off-by: Guo Ren &lt;guoren@kernel.org&gt;Tested-by: Heiko Stuebner &lt;heiko@sntech.de&gt;Link: https://lore.kernel.org/r/20220405071314.3225832-17-guoren@kernel.orgSigned-off-by: Palmer Dabbelt &lt;palmer@rivosinc.com&gt;

            List of files:
            /linux-6.15/arch/riscv/kernel/compat_vdso/Makefile</description>
        <pubDate>Tue, 05 Apr 2022 07:13:10 +0000</pubDate>
        <dc:creator>Guo Ren &lt;guoren@linux.alibaba.com&gt;</dc:creator>
    </item>
</channel>
</rss>
