From 7ab3430578bb44245900b015eefd4644be051cfe Mon Sep 17 00:00:00 2001 From: "Justin M. Forbes" Date: Wed, 7 Jul 2021 13:27:33 -0500 Subject: [PATCH] kernel-5.14.0-0.rc0.20210707git77d34a4683b0.12 * Wed Jul 07 2021 Fedora Kernel Team [5.14.0-0.rc0.20210707git77d34a4683b0.12] - Fix the perf trace link location (Justin M. Forbes) - drm/amdgpu/dc: Really fix DCN3.1 Makefile for PPC64 (Michal Suchanek) Resolves: rhbz# Signed-off-by: Justin M. Forbes --- Makefile.rhelver | 2 +- Patchlist.changelog | 16 +++- generate_crashkernel_default.sh | 25 ++++++ kernel-aarch64-debug-fedora.config | 4 +- kernel-aarch64-debug-rhel.config | 4 +- kernel-aarch64-fedora.config | 4 +- kernel-aarch64-rhel.config | 4 +- kernel-armv7hl-debug-fedora.config | 2 +- kernel-armv7hl-fedora.config | 2 +- kernel-armv7hl-lpae-debug-fedora.config | 2 +- kernel-armv7hl-lpae-fedora.config | 2 +- kernel-s390x-debug-fedora.config | 2 +- kernel-s390x-debug-rhel.config | 2 +- kernel-s390x-fedora.config | 2 +- kernel-s390x-rhel.config | 2 +- kernel-s390x-zfcpdump-rhel.config | 2 +- kernel.spec | 37 ++++++--- linux-kernel-test.patch | 33 -------- patch-5.14.0-redhat.patch | 106 ++++-------------------- sources | 6 +- 20 files changed, 102 insertions(+), 157 deletions(-) create mode 100755 generate_crashkernel_default.sh diff --git a/Makefile.rhelver b/Makefile.rhelver index e0ff8a074..b04cb77d9 100644 --- a/Makefile.rhelver +++ b/Makefile.rhelver @@ -12,7 +12,7 @@ RHEL_MINOR = 99 # # Use this spot to avoid future merge conflicts. # Do not trim this comment. -RHEL_RELEASE = 11 +RHEL_RELEASE = 12 # # Early y+1 numbering diff --git a/Patchlist.changelog b/Patchlist.changelog index 90088e83c..8a16482fc 100644 --- a/Patchlist.changelog +++ b/Patchlist.changelog @@ -1,5 +1,17 @@ -https://gitlab.com/cki-project/kernel-ark/-/commit/b3f99a2ab9f429d8131824c67441aea5daf5a35e - b3f99a2ab9f429d8131824c67441aea5daf5a35e drm/amdgpu/dc: Really fix DCN3.1 Makefile for PPC64 +https://gitlab.com/cki-project/kernel-ark/-/commit/07dabbf6bfada8b964005e573d2a48323e4e0c9c + 07dabbf6bfada8b964005e573d2a48323e4e0c9c Fix the perf trace link location + +https://gitlab.com/cki-project/kernel-ark/-/commit/b677d674288dc553c5832cb1c898d00617846ecc + b677d674288dc553c5832cb1c898d00617846ecc drm/amdgpu/dc: Really fix DCN3.1 Makefile for PPC64 + +https://gitlab.com/cki-project/kernel-ark/-/commit/c86a777b719e3777a9663a13a739840fb48a20ef + c86a777b719e3777a9663a13a739840fb48a20ef Revert "kdump: add support for crashkernel=auto" + +https://gitlab.com/cki-project/kernel-ark/-/commit/0b109d48baa09325c8ccee1557c2dc8cffac781c + 0b109d48baa09325c8ccee1557c2dc8cffac781c Revert "kdump: round up the total memory size to 128M for crashkernel reservation" + +https://gitlab.com/cki-project/kernel-ark/-/commit/b09992bdcf141528a8904e3f81b0d915f483248d + b09992bdcf141528a8904e3f81b0d915f483248d Revert "kdump: fix a grammar issue in a kernel message" https://gitlab.com/cki-project/kernel-ark/-/commit/97a1cde284225696c445ecd5f844bca58e4321db 97a1cde284225696c445ecd5f844bca58e4321db bpf, selftests: Disable tests that need clang13 diff --git a/generate_crashkernel_default.sh b/generate_crashkernel_default.sh new file mode 100755 index 000000000..46d454607 --- /dev/null +++ b/generate_crashkernel_default.sh @@ -0,0 +1,25 @@ +#!/bin/bash +kernelver=$1 && shift +arch=$1 && shift +rootfs=$1 && shift + +output="${rootfs}/lib/modules/${kernelver}/crashkernel.default" + +case $arch in +x86_64|s390*) + ck_cmdline="crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M" + ;; +arm64|aarch64) + ck_cmdline="crashkernel=2G-:448M" + ;; +powerpc|ppc64*) + ck_cmdline="crashkernel=2G-4G:384M,4G-16G:512M,16G-64G:1G,64G-128G:2G,128G-:4G" + ;; +*) + ck_cmdline="" + ;; +esac + +cat > "$output" < ../certs/rhel.pem +%ifarch s390x ppc64le +openssl x509 -inform der -in %{secureboot_ca_0} -out secureboot.pem +cat secureboot.pem >> ../certs/rhel.pem +%endif for i in *.config; do sed -i 's@CONFIG_SYSTEM_TRUSTED_KEYS=""@CONFIG_SYSTEM_TRUSTED_KEYS="certs/rhel.pem"@' $i done @@ -2055,6 +2060,9 @@ BuildKernel() { # prune junk from kernel-devel find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -delete + # Generate crashkernel default config + %{SOURCE57} "$KernelVer" "$Arch" "$RPM_BUILD_ROOT" + # Red Hat UEFI Secure Boot CA cert, which can be used to authenticate the kernel mkdir -p $RPM_BUILD_ROOT%{_datadir}/doc/kernel-keys/$KernelVer %ifarch x86_64 aarch64 @@ -2858,6 +2866,7 @@ fi /lib/modules/%{KVERREL}%{?3:+%{3}}/source\ /lib/modules/%{KVERREL}%{?3:+%{3}}/updates\ /lib/modules/%{KVERREL}%{?3:+%{3}}/weak-updates\ +/lib/modules/%{KVERREL}%{?3:+%{3}}/crashkernel.default\ %{_datadir}/doc/kernel-keys/%{KVERREL}%{?3:+%{3}}\ %if %{1}\ /lib/modules/%{KVERREL}%{?3:+%{3}}/vdso\ @@ -2913,12 +2922,20 @@ fi # # %changelog -* Tue Jul 06 2021 Justin M. Forbes [5.14.0-0.rc0.20210706git79160a603bdb.11] -- common: enable STRICT_MODULE_RWX everywhere (Peter Robinson) - -* Tue Jul 06 2021 Fedora Kernel Team [5.14.0-0.rc0.20210706git79160a603bdb.11] +* Wed Jul 07 2021 Fedora Kernel Team [5.14.0-0.rc0.20210707git77d34a4683b0.12] +- Fix the perf trace link location (Justin M. Forbes) - drm/amdgpu/dc: Really fix DCN3.1 Makefile for PPC64 (Michal Suchanek) +* Wed Jul 07 2021 Fedora Kernel Team [5.14.0-0.rc0.20210707git77d34a4683b0.11] +- redhat: add secureboot CA certificate to trusted kernel keyring (Bruno Meneguele) +- redhat/configs: enable IMA_ARCH_POLICY for aarch64 and s390x (Bruno Meneguele) +- redhat/configs: Enable CONFIG_MLXBF_GIGE on aarch64 (Alaa Hleihel) [1858599] +- Revert "kdump: add support for crashkernel=auto" (Kairui Song) +- Revert "kdump: round up the total memory size to 128M for crashkernel reservation" (Kairui Song) +- Revert "kdump: fix a grammar issue in a kernel message" (Kairui Song) +- Revert "Merge branch 'rename_mod_blacklist_sh_part_2' into 'os-build'" (Justin M. Forbes) +- common: enable STRICT_MODULE_RWX everywhere (Peter Robinson) + * Sat Jul 03 2021 Fedora Kernel Team [5.14.0-0.rc0.20210702git3dbdb38e2869.7] - COMMON_CLK_STM32MP157_SCMI is bool and selects COMMON_CLK_SCMI (Justin M. Forbes) - kernel.spec: Add kernel{,-debug}-devel-matched meta packages (Timothée Ravier) diff --git a/linux-kernel-test.patch b/linux-kernel-test.patch index 86c1ebd9b..e69de29bb 100644 --- a/linux-kernel-test.patch +++ b/linux-kernel-test.patch @@ -1,33 +0,0 @@ -From 5cfc0690eefcc30f880f0c02863a35d63b6c733c Mon Sep 17 00:00:00 2001 -From: "Justin M. Forbes" -Date: Tue, 6 Jul 2021 13:50:10 -0500 -Subject: [PATCH] Fix the perf trace link location - -The install perf_dlfilter.h patch included what seems to be -a typo in the Makefile.perf, which changed the location of the trace -link from '$(DESTDIR_SQ)$(bindir_SQ)/trace' to -'$(DESTDIR_SQ)$(dir_SQ)/trace' This reverts it back to the correct -location. - -Fixes: 0beb218315e06 ("perf build: Install perf_dlfilter.h") -Signed-off-by: Justin M. Forbes ---- - tools/perf/Makefile.perf | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf -index c9e0de5b00c1..a1b9be78a1e0 100644 ---- a/tools/perf/Makefile.perf -+++ b/tools/perf/Makefile.perf -@@ -923,7 +923,7 @@ install-tools: all install-gtk - $(call QUIET_INSTALL, binaries) \ - $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)'; \ - $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)'; \ -- $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(dir_SQ)/trace'; \ -+ $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(bindir_SQ)/trace'; \ - $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(includedir_SQ)/perf'; \ - $(INSTALL) util/perf_dlfilter.h -t '$(DESTDIR_SQ)$(includedir_SQ)/perf' - ifndef NO_PERF_READ_VDSO32 --- -2.31.1 - diff --git a/patch-5.14.0-redhat.patch b/patch-5.14.0-redhat.patch index 19e27ad2b..ee008a1dd 100644 --- a/patch-5.14.0-redhat.patch +++ b/patch-5.14.0-redhat.patch @@ -1,4 +1,3 @@ - Documentation/admin-guide/kdump/kdump.rst | 12 + Documentation/admin-guide/kernel-parameters.txt | 9 + Kconfig | 2 + Kconfig.redhat | 17 + @@ -61,7 +60,6 @@ init/Kconfig | 2 +- kernel/Makefile | 1 + kernel/bpf/syscall.c | 24 + - kernel/crash_core.c | 28 +- kernel/module.c | 2 + kernel/module_signing.c | 9 +- kernel/panic.c | 14 + @@ -74,6 +72,7 @@ security/lockdown/Kconfig | 13 + security/lockdown/lockdown.c | 1 + security/security.c | 6 + + tools/perf/Makefile.perf | 2 +- tools/testing/selftests/bpf/Makefile | 1 - .../selftests/bpf/prog_tests/linked_funcs.c | 42 -- .../testing/selftests/bpf/prog_tests/linked_maps.c | 30 -- @@ -87,31 +86,8 @@ tools/testing/selftests/bpf/progs/linked_maps2.c | 76 --- tools/testing/selftests/bpf/progs/linked_vars1.c | 54 -- tools/testing/selftests/bpf/progs/linked_vars2.c | 55 --- - 89 files changed, 1225 insertions(+), 1501 deletions(-) + 88 files changed, 1188 insertions(+), 1500 deletions(-) -diff --git a/Documentation/admin-guide/kdump/kdump.rst b/Documentation/admin-guide/kdump/kdump.rst -index cb30ca3df27c..951ad3ad6aee 100644 ---- a/Documentation/admin-guide/kdump/kdump.rst -+++ b/Documentation/admin-guide/kdump/kdump.rst -@@ -317,6 +317,18 @@ crashkernel syntax - 2) if the RAM size is between 512M and 2G (exclusive), then reserve 64M - 3) if the RAM size is larger than 2G, then reserve 128M - -+ Or you can use crashkernel=auto if you have enough memory. The threshold -+ is 2G on x86_64, arm64, ppc64 and ppc64le. The threshold is 4G for s390x. -+ If your system memory is less than the threshold crashkernel=auto will not -+ reserve memory. -+ -+ The automatically reserved memory size varies based on architecture. -+ The size changes according to system memory size like below: -+ x86_64: 1G-64G:160M,64G-1T:256M,1T-:512M -+ s390x: 4G-64G:160M,64G-1T:256M,1T-:512M -+ arm64: 2G-:512M -+ ppc64: 2G-4G:384M,4G-16G:512M,16G-64G:1G,64G-128G:2G,128G-:4G -+ - 3) crashkernel=size,high and crashkernel=size,low - - If memory above 4G is preferred, crashkernel=size,high can be used to diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index bdb22006f713..61a3a4a4730b 100644 --- a/Documentation/admin-guide/kernel-parameters.txt @@ -2510,71 +2486,6 @@ index e343f158e556..840c5ecd4fc6 100644 err = bpf_check_uarg_tail_zero(uattr, sizeof(attr), size); if (err) return err; -diff --git a/kernel/crash_core.c b/kernel/crash_core.c -index da449c1cdca7..fbf5e6ef1bab 100644 ---- a/kernel/crash_core.c -+++ b/kernel/crash_core.c -@@ -7,6 +7,7 @@ - #include - #include - #include -+#include - - #include - #include -@@ -41,6 +42,15 @@ static int __init parse_crashkernel_mem(char *cmdline, - unsigned long long *crash_base) - { - char *cur = cmdline, *tmp; -+ unsigned long long total_mem = system_ram; -+ -+ /* -+ * Firmware sometimes reserves some memory regions for it's own use. -+ * so we get less than actual system memory size. -+ * Workaround this by round up the total size to 128M which is -+ * enough for most test cases. -+ */ -+ total_mem = roundup(total_mem, SZ_128M); - - /* for each entry of the comma-separated list */ - do { -@@ -85,13 +95,13 @@ static int __init parse_crashkernel_mem(char *cmdline, - return -EINVAL; - } - cur = tmp; -- if (size >= system_ram) { -+ if (size >= total_mem) { - pr_warn("crashkernel: invalid size\n"); - return -EINVAL; - } - - /* match ? */ -- if (system_ram >= start && system_ram < end) { -+ if (total_mem >= start && total_mem < end) { - *crash_size = size; - break; - } -@@ -250,6 +260,20 @@ static int __init __parse_crashkernel(char *cmdline, - if (suffix) - return parse_crashkernel_suffix(ck_cmdline, crash_size, - suffix); -+ -+ if (strncmp(ck_cmdline, "auto", 4) == 0) { -+#ifdef CONFIG_X86_64 -+ ck_cmdline = "1G-64G:160M,64G-1T:256M,1T-:512M"; -+#elif defined(CONFIG_S390) -+ ck_cmdline = "4G-64G:160M,64G-1T:256M,1T-:512M"; -+#elif defined(CONFIG_ARM64) -+ ck_cmdline = "2G-:512M"; -+#elif defined(CONFIG_PPC64) -+ ck_cmdline = "2G-4G:384M,4G-16G:512M,16G-64G:1G,64G-128G:2G,128G-:4G"; -+#endif -+ pr_info("Using crashkernel=auto, the size chosen is a best effort estimation.\n"); -+ } -+ - /* - * if the commandline contains a ':', then that's the extended - * syntax -- if not, it must be the classic syntax diff --git a/kernel/module.c b/kernel/module.c index 927d46cb8eb9..387e08c31633 100644 --- a/kernel/module.c @@ -2907,6 +2818,19 @@ index 09533cbb7221..d36675494753 100644 #ifdef CONFIG_PERF_EVENTS int security_perf_event_open(struct perf_event_attr *attr, int type) { +diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf +index c9e0de5b00c1..a1b9be78a1e0 100644 +--- a/tools/perf/Makefile.perf ++++ b/tools/perf/Makefile.perf +@@ -923,7 +923,7 @@ install-tools: all install-gtk + $(call QUIET_INSTALL, binaries) \ + $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(bindir_SQ)'; \ + $(INSTALL) $(OUTPUT)perf '$(DESTDIR_SQ)$(bindir_SQ)'; \ +- $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(dir_SQ)/trace'; \ ++ $(LN) '$(DESTDIR_SQ)$(bindir_SQ)/perf' '$(DESTDIR_SQ)$(bindir_SQ)/trace'; \ + $(INSTALL) -d -m 755 '$(DESTDIR_SQ)$(includedir_SQ)/perf'; \ + $(INSTALL) util/perf_dlfilter.h -t '$(DESTDIR_SQ)$(includedir_SQ)/perf' + ifndef NO_PERF_READ_VDSO32 diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile index f405b20c1e6c..a8e298a22709 100644 --- a/tools/testing/selftests/bpf/Makefile diff --git a/sources b/sources index c42c1f723..6bdf2895b 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (linux-5.13-11788-g79160a603bdb.tar.xz) = 15d5e8778a09b318f4454e2333685a85cd9003259120cfdf0175ad16fc9380acffaa59050c7ada549a33321545fd78d3ffb384d1a4a6801fa026cfe175058edc -SHA512 (kernel-abi-whitelists-5.14.0-0.rc0.20210706git79160a603bdb.11.tar.bz2) = d93631d05322f6f8f4d941651ceba4f87b088fbe3065a8ecb6e0280d294931d3d4c42ba613a71de8cb0d7676b3ec10cb8948f77c7f724087f9c3e0c96f2ed5a3 -SHA512 (kernel-kabi-dw-5.14.0-0.rc0.20210706git79160a603bdb.11.tar.bz2) = 1c7fdbbfb5b59c59f47e1bdfa3ea23d43fffdabf547996672bbd9572423dd7cd2a43ea7d24aa496f18d1c2ce028e9a04ca8057ea5ba02de6022c9bfc63ec03b2 +SHA512 (linux-5.13-11855-g77d34a4683b0.tar.xz) = 0971ff74b54e91e727adcb2fb40715aff925deca5c8574c61ff658b29ca508f61b71776134f22939f905c34fc1eb69ab3f4bbaed5cef12cf06e8950d867309f0 +SHA512 (kernel-abi-whitelists-5.14.0-0.rc0.20210707git77d34a4683b0.12.tar.bz2) = 411f2a75d47633c61eb416d270a293d6965cf69b05fdada93480765da88185cea0378820f53b66fd405549374a5094868530f2451d1d2e6eda970afdc2d4bbb8 +SHA512 (kernel-kabi-dw-5.14.0-0.rc0.20210707git77d34a4683b0.12.tar.bz2) = ef817adfa46a2e6587ef07e207aceb8026d2fc442916e5c2ddb8b3b56acdb35c693e3cfe95f88c5d78ae234d3ad9c702c6f2775c2658f59840832f21018e4dd8