07 Oct, 2020
1 commit
-
Tested-by: Jon Hunter
Tested-by: Shuah Khan
Tested-by: Linux Kernel Functional Testing
Tested-by: Guenter Roeck
Link: https://lore.kernel.org/r/20201005142109.796046410@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman
01 Oct, 2020
1 commit
-
Tested-by: Jon Hunter
Tested-by: Guenter Roeck
Tested-by: Linux Kernel Functional Testing
Tested-by: Shuah Khan
Link: https://lore.kernel.org/r/20200929110010.467764689@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman
27 Sep, 2020
1 commit
-
Tested-by: Jon Hunter
Tested-by: Shuah Khan
Tested-by: Linux Kernel Functional Testing
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman
Link: https://lore.kernel.org/r/20200925124723.575329814@linuxfoundation.org
Signed-off-by: Greg Kroah-Hartman
23 Sep, 2020
1 commit
-
Link: https://lore.kernel.org/lkml/20200921163121.870386357@linuxfoundation.org/
Tested-by: Linux Kernel Functional Testing
Tested-by: Jon Hunter
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman
17 Sep, 2020
1 commit
-
Tested-by: Shuah Khan
Tested-by: Jon Hunter
Tested-by: Linux Kernel Functional Testing
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman
12 Sep, 2020
1 commit
-
Tested-by: Jon Hunter
Tested-by: Shuah Khan
Tested-by: Guenter Roeck
Tested-by: Linux Kernel Functional Testing
Signed-off-by: Greg Kroah-Hartman
10 Sep, 2020
1 commit
-
Tested-by: Shuah Khan
Tested-by: Linux Kernel Functional Testing
Tested-by: Jon Hunter
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman
05 Sep, 2020
1 commit
-
Tested-by: Shuah Khan
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman
03 Sep, 2020
3 commits
-
Tested-by: Shuah Khan
Tested-by: Linux Kernel Functional Testing
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman -
commit e4a42c82e943b97ce124539fcd7a47445b43fa0d upstream.
Redefine GZIP, BZIP2, LZOP variables as KGZIP, KBZIP2, KLZOP resp.
GZIP, BZIP2, LZOP env variables are reserved by the tools. The original
attempt to redefine them internally doesn't work in makefiles/scripts
intercall scenarios, e.g., "make GZIP=gzip bindeb-pkg" and results in
broken builds. There can be other broken build commands because of this,
so the universal solution is to use non-reserved env variables for the
compression tools.Fixes: 8dfb61dcbace ("kbuild: add variables for compression tools")
Signed-off-by: Denis Efremov
Tested-by: Guenter Roeck
Signed-off-by: Masahiro Yamada
Cc: Matthias Maennich
Signed-off-by: Greg Kroah-Hartman -
commit 8dfb61dcbaceb19a5ded5e9c9dcf8d05acc32294 upstream.
Allow user to use alternative implementations of compression tools,
such as pigz, pbzip2, pxz. For example, multi-threaded tools to
speed up the build:
$ make GZIP=pigz BZIP2=pbzip2Variables _GZIP, _BZIP2, _LZOP are used internally because original env
vars are reserved by the tools. The use of GZIP in gzip tool is obsolete
since 2015. However, alternative implementations (e.g., pigz) still rely
on it. BZIP2, BZIP, LZOP vars are not obsolescent.The credit goes to @grsecurity.
As a sidenote, for multi-threaded lzma, xz compression one can use:
$ export XZ_OPT="--threads=0"Signed-off-by: Denis Efremov
Signed-off-by: Masahiro Yamada
Signed-off-by: Matthias Maennich
Signed-off-by: Greg Kroah-Hartman
26 Aug, 2020
6 commits
-
Tested-by: Jon Hunter
Tested-by: Nathan Chancellor
Tested-by: Guenter Roeck
Signed-off-by: Greg Kroah-Hartman -
commit a0d1c951ef08ed24f35129267e3595d86f57f5d3 upstream.
As Documentation/kbuild/llvm.rst implies, building the kernel with a
full set of LLVM tools gets very verbose and unwieldy.Provide a single switch LLVM=1 to use Clang and LLVM tools instead
of GCC and Binutils. You can pass it from the command line or as an
environment variable.Please note LLVM=1 does not turn on the integrated assembler. You need
to pass LLVM_IAS=1 to use it. When the upstream kernel is ready for the
integrated assembler, I think we can make it default.We discussed what we need, and we agreed to go with a simple boolean
flag that switches both target and host tools:https://lkml.org/lkml/2020/3/28/494
https://lkml.org/lkml/2020/4/3/43Some items discussed, but not adopted:
- LLVM_DIR
When multiple versions of LLVM are installed, I just thought supporting
LLVM_DIR=/path/to/my/llvm/bin/ might be useful.CC = $(LLVM_DIR)clang
LD = $(LLVM_DIR)ld.lld
...However, we can handle this by modifying PATH. So, we decided to not do
this.- LLVM_SUFFIX
Some distributions (e.g. Debian) package specific versions of LLVM with
naming conventions that use the version as a suffix.CC = clang$(LLVM_SUFFIX)
LD = ld.lld(LLVM_SUFFIX)
...will allow a user to pass LLVM_SUFFIX=-11 to use clang-11 etc.,
but the suffixed versions in /usr/bin/ are symlinks to binaries in
/usr/lib/llvm-#/bin/, so this can also be handled by PATH.Signed-off-by: Masahiro Yamada
Reviewed-by: Nathan Chancellor
Tested-by: Nathan Chancellor # build
Tested-by: Nick Desaulniers
Reviewed-by: Nick Desaulniers
Signed-off-by: Nick Desaulniers
Signed-off-by: Greg Kroah-Hartman -
commit 7e20e47c70f810d678d02941fa3c671209c4ca97 upstream.
The 'AS' variable is unused for building the kernel. Only the remaining
usage is to turn on the integrated assembler. A boolean flag is a better
fit for this purpose.AS=clang was added for experts. So, I replaced it with LLVM_IAS=1,
breaking the backward compatibility.Suggested-by: Nick Desaulniers
Signed-off-by: Masahiro Yamada
Reviewed-by: Nathan Chancellor
Reviewed-by: Nick Desaulniers
Signed-off-by: Nick Desaulniers
Signed-off-by: Greg Kroah-Hartman -
commit aa824e0c962b532d5073cbb41b2efcd6f5e72bae upstream.
As commit 5ef872636ca7 ("kbuild: get rid of misleading $(AS) from
documents") noted, we rarely use $(AS) directly in the kernel build.Now that the only/last user of $(AS) in drivers/net/wan/Makefile was
converted to $(CC), $(AS) is no longer used in the build process.You can still pass in AS=clang, which is just a switch to turn on
the LLVM integrated assembler.Signed-off-by: Masahiro Yamada
Reviewed-by: Nick Desaulniers
Tested-by: Nick Desaulniers
Reviewed-by: Nathan Chancellor
Signed-off-by: Nick Desaulniers
Signed-off-by: Greg Kroah-Hartman -
commit 94f7345b712405b79647a6a4bf8ccbd0d78fa69d upstream.
Python 2 has retired. There is no user of this variable.
Signed-off-by: Masahiro Yamada
Signed-off-by: Nick Desaulniers
Signed-off-by: Greg Kroah-Hartman -
commit eefb8c124fd969e9a174ff2bedff86aa305a7438 upstream.
Introduce a new READELF variable to top-level Makefile, so the name of
readelf binary can be specified.Before this change the name of the binary was hardcoded to
"$(CROSS_COMPILE)readelf" which might not be present for every
toolchain.This allows to build with LLVM Object Reader by using make parameter
READELF=llvm-readelf.Link: https://github.com/ClangBuiltLinux/linux/issues/771
Signed-off-by: Dmitry Golovin
Reviewed-by: Nick Desaulniers
Signed-off-by: Masahiro Yamada
Signed-off-by: Nick Desaulniers
Signed-off-by: Greg Kroah-Hartman
21 Aug, 2020
1 commit
-
Tested-by: Guenter Roeck
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman
19 Aug, 2020
1 commit
-
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman
11 Aug, 2020
1 commit
-
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman
07 Aug, 2020
1 commit
-
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman
05 Aug, 2020
1 commit
-
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman
01 Aug, 2020
1 commit
-
Signed-off-by: Greg Kroah-Hartman
29 Jul, 2020
2 commits
-
Tested-by: Shuah Khan
Signed-off-by: Greg Kroah-Hartman -
commit ca9b31f6bb9c6aa9b4e5f0792f39a97bbffb8c51 upstream.
When CROSS_COMPILE is set (e.g. aarch64-linux-gnu-), if
$(CROSS_COMPILE)elfedit is found at /usr/bin/aarch64-linux-gnu-elfedit,
GCC_TOOLCHAIN_DIR will be set to /usr/bin/. --prefix= will be set to
/usr/bin/ and Clang as of 11 will search for both
$(prefix)aarch64-linux-gnu-$needle and $(prefix)$needle.GCC searchs for $(prefix)aarch64-linux-gnu/$version/$needle,
$(prefix)aarch64-linux-gnu/$needle and $(prefix)$needle. In practice,
$(prefix)aarch64-linux-gnu/$needle rarely contains executables.To better model how GCC's -B/--prefix takes in effect in practice, newer
Clang (since
https://github.com/llvm/llvm-project/commit/3452a0d8c17f7166f479706b293caf6ac76ffd90)
only searches for $(prefix)$needle. Currently it will find /usr/bin/as
instead of /usr/bin/aarch64-linux-gnu-as.Set --prefix= to $(GCC_TOOLCHAIN_DIR)$(notdir $(CROSS_COMPILE))
(/usr/bin/aarch64-linux-gnu-) so that newer Clang can find the
appropriate cross compiling GNU as (when -no-integrated-as is in
effect).Cc: stable@vger.kernel.org
Reported-by: Nathan Chancellor
Signed-off-by: Fangrui Song
Reviewed-by: Nathan Chancellor
Tested-by: Nathan Chancellor
Tested-by: Nick Desaulniers
Link: https://github.com/ClangBuiltLinux/linux/issues/1099
Reviewed-by: Nick Desaulniers
Signed-off-by: Masahiro Yamada
Signed-off-by: Greg Kroah-Hartman
22 Jul, 2020
1 commit
16 Jul, 2020
1 commit
09 Jul, 2020
1 commit
01 Jul, 2020
1 commit
-
Signed-off-by: Sasha Levin
24 Jun, 2020
1 commit
22 Jun, 2020
2 commits
-
commit 4b50c8c4eaf06a825d1c005c0b1b4a8307087b83 upstream.
This code does not work as stated in the comment.
$(CONFIG_MODVERSIONS) is always empty because it is expanded before
include/config/auto.conf is included. Hence, 'make modules' with
CONFIG_MODVERSION=y cannot record the version CRCs.This has been broken since 2003, commit ("kbuild: Enable modules to be
build using the "make dir/" syntax"). [1][1]: https://git.kernel.org/pub/scm/linux/kernel/git/history/history.git/commit/?id=15c6240cdc44bbeef3c4797ec860f9765ef4f1a7
Cc: linux-stable # v2.5.71+
Signed-off-by: Masahiro Yamada
Signed-off-by: Greg Kroah-Hartman
17 Jun, 2020
1 commit
11 Jun, 2020
1 commit
07 Jun, 2020
1 commit
03 Jun, 2020
1 commit
27 May, 2020
2 commits
-
[ Upstream commit b5154bf63e5577faaaca1d942df274f7de91dd2a ]
'make dtbs_check' checks the shecma in addition to building *.dtb files,
in other words, 'make dtbs_check' is a super-set of 'make dtbs'.
So, you do not have to do 'make dtbs dtbs_check', but I want to keep
the build system as robust as possible in any use.Currently, 'dtbs' and 'dtbs_check' are independent of each other.
In parallel building, two threads descend into arch/*/boot/dts/,
one for dtbs and the other for dtbs_check, then end up with building
the same DTB simultaneously.This commit fixes the concurrency issue. Otherwise, I see build errors
like follows:$ make ARCH=arm64 defconfig
$ make -j16 ARCH=arm64 DT_SCHEMA_FILES=Documentation/devicetree/bindings/arm/psci.yaml dtbs dtbs_check
DTC arch/arm64/boot/dts/qcom/sdm845-cheza-r2.dtb
DTC arch/arm64/boot/dts/amlogic/meson-gxl-s905x-p212.dtb
DTC arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-lite2.dtb
DTC arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-lite2.dtb
DTC arch/arm64/boot/dts/freescale/imx8mn-evk.dtb
DTC arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dtb
DTC arch/arm64/boot/dts/zte/zx296718-pcbox.dtb
DTC arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dt.yaml
DTC arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p230.dtb
DTC arch/arm64/boot/dts/xilinx/zynqmp-zc1254-revA.dtb
DTC arch/arm64/boot/dts/allwinner/sun50i-h6-pine-h64.dtb
DTC arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet-inx.dtb
DTC arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dtb
CHECK arch/arm64/boot/dts/altera/socfpga_stratix10_socdk.dt.yaml
fixdep: error opening file: arch/arm64/boot/dts/allwinner/.sun50i-h6-orangepi-lite2.dtb.d: No such file or directory
make[2]: *** [scripts/Makefile.lib:296: arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-lite2.dtb] Error 2
make[2]: *** Deleting file 'arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-lite2.dtb'
make[2]: *** Waiting for unfinished jobs....
DTC arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet-kd.dtb
DTC arch/arm64/boot/dts/amlogic/meson-gxl-s905d-p231.dtb
DTC arch/arm64/boot/dts/xilinx/zynqmp-zc1275-revA.dtb
DTC arch/arm64/boot/dts/freescale/imx8mn-ddr4-evk.dtb
fixdep: parse error; no targets found
make[2]: *** [scripts/Makefile.lib:296: arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dtb] Error 1
make[2]: *** Deleting file 'arch/arm64/boot/dts/allwinner/sun50i-h6-orangepi-one-plus.dtb'
make[1]: *** [scripts/Makefile.build:505: arch/arm64/boot/dts/allwinner] Error 2
make[1]: *** Waiting for unfinished jobs....
DTC arch/arm64/boot/dts/renesas/r8a77951-salvator-xs.dtbSigned-off-by: Masahiro Yamada
Reviewed-by: Rob Herring
Signed-off-by: Sasha Levin
20 May, 2020
2 commits
-
commit b1112139a103b4b1101d0d2d72931f2d33d8c978 upstream.
gcc-10 will rename --param=allow-store-data-races=0
to -fno-allow-store-data-races.The flag change happened at https://gcc.gnu.org/PR92046.
Signed-off-by: Sergei Trofimovich
Acked-by: Jiri Kosina
Signed-off-by: Masahiro Yamada
Cc: Thomas Backlund
Signed-off-by: Greg Kroah-Hartman