!1637 kernel-rt:update 5.10.0-208.0.0.61 && rpi-rt 5.10.0-208.0.0.11

From: @zhangyuge001 
Reviewed-by: @guohaocs2c 
Signed-off-by: @guohaocs2c
This commit is contained in:
openeuler-ci-bot 2024-06-19 05:45:24 +00:00 committed by Gitee
commit 959e6f79a0
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
4 changed files with 970 additions and 797 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,22 +1,22 @@
From 0026e130f88770f45b00f52ba1374dd90b8be0f0 Mon Sep 17 00:00:00 2001
From: liyulei <liyulei@kylinos.cn>
Date: Mon, 6 Feb 2023 18:04:41 +0800
Subject: [PATCH 2/2] modify openeuler_defconfig for rt62
From b17c5ed418d6cdd498aaa2b4bb29df1d640ba8ad Mon Sep 17 00:00:00 2001
From: zhangyu <zhangyu4@kylinos.cn>
Date: Tue, 18 Jun 2024 12:59:41 +0800
Subject: [PATCH 2/2] zhy2
---
arch/arm64/configs/openeuler_defconfig | 5 +++--
arch/arm64/kernel/fpsimd.c | 4 ++--
arch/x86/configs/openeuler_defconfig | 7 ++++---
arch/x86/configs/openeuler_defconfig | 8 ++++----
arch/x86/include/asm/preempt.h | 16 +++++++++++++---
include/linux/printk.h | 2 +-
kernel/printk/printk.c | 2 +-
6 files changed, 24 insertions(+), 12 deletions(-)
6 files changed, 24 insertions(+), 13 deletions(-)
diff --git a/arch/arm64/configs/openeuler_defconfig b/arch/arm64/configs/openeuler_defconfig
index 30384eacad4f..b0ed4a9b3058 100644
index 05b50ca38..5baa109a4 100644
--- a/arch/arm64/configs/openeuler_defconfig
+++ b/arch/arm64/configs/openeuler_defconfig
@@ -74,6 +74,7 @@ CONFIG_HIGH_RES_TIMERS=y
@@ -87,6 +87,7 @@ CONFIG_HIGH_RES_TIMERS=y
CONFIG_PREEMPT_NONE=y
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
@ -24,16 +24,16 @@ index 30384eacad4f..b0ed4a9b3058 100644
#
# CPU/Task time and stats accounting
@@ -733,7 +734,7 @@ CONFIG_ACPI_MPAM=y
CONFIG_ACPI_PPTT=y
@@ -772,7 +773,7 @@ CONFIG_ACPI_PPTT=y
CONFIG_ACPI_PCC=y
# CONFIG_PMIC_OPREGION is not set
CONFIG_IRQ_BYPASS_MANAGER=y
-CONFIG_VIRTUALIZATION=y
+# CONFIG_VIRTUALIZATION is not set
CONFIG_KVM=y
CONFIG_HAVE_KVM_IRQCHIP=y
CONFIG_HAVE_KVM_IRQFD=y
@@ -1125,7 +1126,7 @@ CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
CONFIG_CVM_HOST=y
CONFIG_CVM_GUEST=y
@@ -1174,7 +1175,7 @@ CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y
# CONFIG_GUP_BENCHMARK is not set
# CONFIG_READ_ONLY_THP_FOR_FS is not set
CONFIG_ARCH_HAS_PTE_SPECIAL=y
@ -43,10 +43,10 @@ index 30384eacad4f..b0ed4a9b3058 100644
CONFIG_MEMORY_RELIABLE=y
# CONFIG_CLEAR_FREELIST_PAGE is not set
diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c
index 84520f11667d..aa631771e0dc 100644
index 53753ae47..bcdd1bf20 100644
--- a/arch/arm64/kernel/fpsimd.c
+++ b/arch/arm64/kernel/fpsimd.c
@@ -180,7 +180,7 @@ static void __get_cpu_fpsimd_context(void)
@@ -234,7 +234,7 @@ static void __get_cpu_fpsimd_context(void)
*/
static void get_cpu_fpsimd_context(void)
{
@ -55,7 +55,7 @@ index 84520f11667d..aa631771e0dc 100644
__get_cpu_fpsimd_context();
}
@@ -201,7 +201,7 @@ static void __put_cpu_fpsimd_context(void)
@@ -255,7 +255,7 @@ static void __put_cpu_fpsimd_context(void)
static void put_cpu_fpsimd_context(void)
{
__put_cpu_fpsimd_context();
@ -65,22 +65,23 @@ index 84520f11667d..aa631771e0dc 100644
static bool have_cpu_fpsimd_context(void)
diff --git a/arch/x86/configs/openeuler_defconfig b/arch/x86/configs/openeuler_defconfig
index 5ada612f1d75..685a49ca1fef 100644
index f3b810d0c..4494a5785 100644
--- a/arch/x86/configs/openeuler_defconfig
+++ b/arch/x86/configs/openeuler_defconfig
@@ -89,9 +89,10 @@ CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
@@ -89,10 +89,10 @@ CONFIG_HIGH_RES_TIMERS=y
CONFIG_CLOCKSOURCE_VALIDATE_LAST_CYCLE=y
# end of Timers subsystem
-CONFIG_PREEMPT_NONE=y
+# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
# CONFIG_PREEMPT is not set
-
+CONFIG_PREEMPT_RT=y
#
# CPU/Task time and stats accounting
@@ -206,7 +207,7 @@ CONFIG_HAVE_UID16=y
#
@@ -217,7 +217,7 @@ CONFIG_HAVE_UID16=y
CONFIG_SYSCTL_EXCEPTION_TRACE=y
CONFIG_HAVE_PCSPKR_PLATFORM=y
CONFIG_BPF=y
@ -89,7 +90,7 @@ index 5ada612f1d75..685a49ca1fef 100644
CONFIG_UID16=y
CONFIG_MULTIUSER=y
CONFIG_SGETMASK_SYSCALL=y
@@ -735,7 +736,7 @@ CONFIG_KVM_COMPAT=y
@@ -758,7 +758,7 @@ CONFIG_KVM_COMPAT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_HAVE_KVM_NO_POLL=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
@ -99,7 +100,7 @@ index 5ada612f1d75..685a49ca1fef 100644
CONFIG_KVM_INTEL=m
CONFIG_X86_SGX_KVM=y
diff --git a/arch/x86/include/asm/preempt.h b/arch/x86/include/asm/preempt.h
index a3b73de276c3..dda9ec24fdc1 100644
index a3b73de27..dda9ec24f 100644
--- a/arch/x86/include/asm/preempt.h
+++ b/arch/x86/include/asm/preempt.h
@@ -134,10 +134,8 @@ static __always_inline bool should_resched(int preempt_offset)
@ -132,7 +133,7 @@ index a3b73de276c3..dda9ec24fdc1 100644
+
#endif /* __ASM_PREEMPT_H */
diff --git a/include/linux/printk.h b/include/linux/printk.h
index 9331b131ba25..23946f4828b2 100644
index 26c70fd11..c82c971e8 100644
--- a/include/linux/printk.h
+++ b/include/linux/printk.h
@@ -241,7 +241,7 @@ __printf(1, 2) void dump_stack_set_arch_desc(const char *fmt, ...);
@ -145,18 +146,18 @@ index 9331b131ba25..23946f4828b2 100644
#else
static inline void zap_locks(void) { }
diff --git a/kernel/printk/printk.c b/kernel/printk/printk.c
index e95b00f24c75..59bd804e662a 100644
index f068738c7..82d58ad08 100644
--- a/kernel/printk/printk.c
+++ b/kernel/printk/printk.c
@@ -1813,7 +1813,7 @@ static void print_sync_until(struct console *con, u64 seq)
@@ -1821,7 +1821,7 @@ static void print_sync_until(struct console *con, u64 seq)
console_atomic_unlock(flags);
}
-#if defined(CONFIG_X86) || defined(CONFIG_ARM64_PSEUDO_NMI)
+#if (defined(CONFIG_X86) || defined(CONFIG_ARM64_PSEUDO_NMI)) && !defined(CONFIG_PREEMPT_RT)
+#if 0//(defined(CONFIG_X86) || defined(CONFIG_ARM64_PSEUDO_NMI)) && !defined(CONFIG_PREEMPT_RT)
void zap_locks(void)
{
// if (raw_spin_is_locked(&logbuf_lock)) {
--
2.36.1
2.41.0

View File

@ -3,16 +3,15 @@
%define modsign_cmd %{SOURCE10}
%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/)
%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/ -e s/powerpc64le/powerpc/)
%global KernelVer %{version}-%{release}.%{_target_cpu}
%global debuginfodir /usr/lib/debug
%global upstream_version 5.10
%global upstream_sublevel 0
%global devel_release 161
%global devel_release 208
%global maintenance_release .0.0
%global pkg_release .60
%global pkg_release .61
%global rt_release .rt62
%define with_debuginfo 1
@ -34,11 +33,15 @@
%define with_64kb %{?_with_64kb: 1} %{?!_with_64kb: 0}
%if %{with_64kb}
%global package64kb -64kb
%global kv_suffix +64kb
%define with_kabichk 0
%endif
%else
%define with_64kb 0
%endif
%global KernelVer %{version}-%{release}.%{_target_cpu}%{?kv_suffix}
#default is enabled. You can disable it with --without option
%define with_perf %{?_without_perf: 0} %{?!_without_perf: 1}
@ -62,6 +65,7 @@ Source15: process_pgp_certs.sh
%if 0%{?with_kabichk}
Source18: check-kabi
Source20: Module.kabi_aarch64
Source21: Module.kabi_x86_64
%endif
Source200: mkgrub-menu-aarch64.sh
@ -102,7 +106,11 @@ BuildRequires: audit-libs-devel
BuildRequires: pciutils-devel gettext
BuildRequires: rpm-build, elfutils
BuildRequires: numactl-devel python3-devel glibc-static python3-docutils
BuildRequires: perl-generators perl(Carp) libunwind-devel gtk2-devel libbabeltrace-devel java-1.8.0-openjdk perl-devel
BuildRequires: perl-generators perl(Carp) libunwind-devel gtk2-devel libbabeltrace-devel java-1.8.0-openjdk java-1.8.0-openjdk-devel perl-devel
%if 0%{?openEuler_sign_rsa}
BuildRequires: sign-openEuler
%endif
AutoReq: no
AutoProv: yes
@ -117,12 +125,15 @@ Provides: kernel-rt-uname-r = %{KernelVer} kernel-rt=%{KernelVer}
Requires: dracut >= 001-7 grubby >= 8.28-2 initscripts >= 8.11.1-1 linux-firmware >= 20100806-2 module-init-tools >= 3.16-2
ExclusiveArch: noarch aarch64 i686 x86_64
ExclusiveArch: noarch aarch64 i686 x86_64 ppc64le
ExclusiveOS: Linux
%if %{with_perf}
BuildRequires: flex xz-devel libzstd-devel
BuildRequires: java-devel
%ifarch aarch64
BuildRequires: OpenCSD
%endif
%endif
BuildRequires: dwarves
@ -155,6 +166,7 @@ Requires: perl findutils
This package provides kernel headers and makefiles sufficient to build modules
against the %{KernelVer} kernel package.
%if !%{with_64kb}
%package tools
Summary: Assortment of tools for the Linux kernel
Provides: %{name}-tools-libs
@ -214,6 +226,7 @@ manipulation of eBPF programs and maps.
Summary: the kernel source
%description source
This package contains vaious source files from the kernel.
%endif
%if 0%{?with_debuginfo}
%define _debuginfo_template %{nil}
@ -231,6 +244,10 @@ Debug information is useful when developing applications that use this\
package or when debugging this package.\
%{nil}
%if %{with_64kb}
%debuginfo_template -n kernel-64kb
%files -n kernel-64kb-debuginfo -f debugfiles.list
%else
%debuginfo_template -n kernel-rt
%files -n kernel-rt-debuginfo -f debugfiles.list
@ -258,7 +275,8 @@ package or when debugging this package.\
%{expand:%%global _find_debuginfo_opts %{?_find_debuginfo_opts} -p '.*%{python3_sitearch}/perf.*(.debug)?|XXX' -o python3-perf-debugfiles.list}
#with_perf
%endif
#with_64kb
%endif
%endif
%prep
@ -272,7 +290,12 @@ tar -xjf %{SOURCE9998}
mv kernel linux-%{KernelVer}
cd linux-%{KernelVer}
cp %{SOURCE13} certs
# process PGP certs
cp %{SOURCE13} .
cp %{SOURCE14} .
cp %{SOURCE15} .
sh %{SOURCE15}
cp pubring.gpg certs
%if 0%{?with_patch}
cp %{SOURCE9000} .
@ -327,7 +350,7 @@ cp -a tools/perf tools/python3-perf
%build
cd linux-%{KernelVer}
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}/" Makefile
perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}%{?kv_suffix}/" Makefile
## make linux
make mrproper %{_smp_mflags}
@ -350,8 +373,7 @@ make ARCH=%{Arch} modules %{?_smp_mflags}
%if 0%{?with_kabichk}
chmod 0755 %{SOURCE18}
if [ -e $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu} ]; then
##%{SOURCE18} -k $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu} -s Module.symvers || exit 1
echo "**** NOTE: now don't check Kabi. ****"
%{SOURCE18} -k $RPM_SOURCE_DIR/Module.kabi_%{_target_cpu} -s Module.symvers || exit 1
else
echo "**** NOTE: Cannot find reference Module.kabi file. ****"
fi
@ -365,8 +387,14 @@ make ARCH=%{Arch} modules %{?_smp_mflags}
## make tools
%if %{with_perf}
# perf
%ifarch aarch64
# aarch64 make perf with CORESIGHT=1
%global perf_make \
make EXTRA_CFLAGS="-Wl,-z,now -g -Wall -fstack-protector-strong -fPIC" EXTRA_PERFLIBS="-fpie -pie" %{?_smp_mflags} -s V=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 CORESIGHT=1 prefix=%{_prefix}
%else
%global perf_make \
make EXTRA_CFLAGS="-Wl,-z,now -g -Wall -fstack-protector-strong -fPIC" EXTRA_PERFLIBS="-fpie -pie" %{?_smp_mflags} -s V=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 prefix=%{_prefix}
%endif
%if 0%{?with_python2}
%global perf_python2 -C tools/perf PYTHON=%{__python2}
%global perf_python3 -C tools/python3-perf PYTHON=%{__python3}
@ -431,8 +459,12 @@ popd
pushd tools/kvm/kvm_stat/
make %{?_smp_mflags} man
popd
pushd tools/netacc
make BPFTOOL=../../tools/bpf/bpftool/bpftool
popd
%install
%if !%{with_64kb}
%if 0%{?with_source}
%define _python_bytecompile_errors_terminate_build 0
mkdir -p $RPM_BUILD_ROOT/usr/src/
@ -440,6 +472,7 @@ popd
cp linux-%{KernelVer}/.config $RPM_BUILD_ROOT/usr/src/linux-%{KernelVer}/
cp linux-%{KernelVer}/.scmversion $RPM_BUILD_ROOT/usr/src/linux-%{KernelVer}/
%endif
%endif
cd linux-%{KernelVer}
@ -453,6 +486,23 @@ mkdir -p $RPM_BUILD_ROOT/boot
dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-%{KernelVer}.img bs=1M count=20
install -m 755 $(make -s image_name) $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}
%if 0%{?openEuler_sign_rsa}
echo "start sign"
%ifarch %arm aarch64
gunzip -c $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}>$RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip.efi
/opt/sign-openEuler/client --config /opt/sign-openEuler/config.toml add --key-name default-x509ee --file-type efi-image --key-type x509ee --sign-type authenticode $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip.efi
mv $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip.efi $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip
gzip -c $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip>$RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}
rm -f $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.unzip
%endif
%ifarch x86_64
mv $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer} $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.efi
/opt/sign-openEuler/client --config /opt/sign-openEuler/config.toml add --key-name default-x509ee --file-type efi-image --key-type x509ee --sign-type authenticode $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.efi
mv $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}.efi $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer}
%endif
%endif
pushd $RPM_BUILD_ROOT/boot
sha512hmac ./vmlinuz-%{KernelVer} >./.vmlinuz-%{KernelVer}.hmac
popd
@ -460,7 +510,9 @@ popd
install -m 644 .config $RPM_BUILD_ROOT/boot/config-%{KernelVer}
install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-%{KernelVer}
gzip -c9 < Module.symvers > $RPM_BUILD_ROOT/boot/symvers-%{KernelVer}.gz
%if 0%{?with_kabichk}
gzip -c9 < Module.symvers > $RPM_BUILD_ROOT/boot/symvers-%{KernelVer}.gz
%endif
mkdir -p $RPM_BUILD_ROOT%{_sbindir}
install -m 755 %{SOURCE200} $RPM_BUILD_ROOT%{_sbindir}/mkgrub-menu-%{devel_release}.sh
@ -629,6 +681,7 @@ popd
## install tools
%if !%{with_64kb}
%if %{with_perf}
# perf
# perf tool binary and supporting scripts/binaries
@ -707,6 +760,10 @@ popd
pushd tools/kvm/kvm_stat
make INSTALL_ROOT=%{buildroot} install-tools
popd
pushd tools/netacc
make INSTALL_ROOT=%{buildroot} install
popd
%endif
%define __spec_install_post\
%{?__debug_package:%{__debug_install_post}}\
@ -763,6 +820,7 @@ then
done)
fi
%if !%{with_64kb}
%post -n %{name}-tools
/sbin/ldconfig
%systemd_post cpupower.service
@ -773,6 +831,7 @@ fi
%postun -n %{name}-tools
/sbin/ldconfig
%systemd_postun cpupower.service
%endif
%files
%defattr (-, root, root)
@ -781,7 +840,9 @@ fi
%ifarch aarch64
/boot/dtb-*
%endif
%if 0%{?with_kabichk}
/boot/symvers-*
%endif
/boot/System.map-*
/boot/vmlinuz-*
%ghost /boot/initramfs-%{KernelVer}.img
@ -803,6 +864,7 @@ fi
%defattr (-, root, root)
/usr/include/*
%if !%{with_64kb}
%if %{with_perf}
%files -n perf
%{_bindir}/perf
@ -855,6 +917,8 @@ fi
%{_bindir}/gpio-watch
%{_mandir}/man1/kvm_stat*
%{_bindir}/kvm_stat
%{_sbindir}/net-acc
%{_sbindir}/tuned_acc/netacc
%{_libdir}/libcpupower.so.0
%{_libdir}/libcpupower.so.0.0.1
%license linux-%{KernelVer}/COPYING
@ -890,7 +954,13 @@ fi
/usr/src/linux-%{KernelVer}/.scmversion
%endif
#with_64kb
%endif
%changelog
* Tue Jun 18 2024 zhangyu <zhangyu4@kylinos.cn> - 5.10.0-208.0.0.61
- update kernel-rt version to 5.10.0-208.0.0
* Mon Nov 1 2023 zhangyu <zhangyu4@kylinos.cn> - 5.10.0-161.0.0.60
- update kernel-rt version to 5.10.0-161.0.0

View File

@ -2,13 +2,13 @@
%global KernelVer %{version}-%{release}.raspi.%{_target_cpu}
%global hulkrelease 161.0.0
%global hulkrelease 208.0.0
%global debug_package %{nil}
Name: raspberrypi-kernel-rt
Version: 5.10.0
Release: %{hulkrelease}.rt62.10
Release: %{hulkrelease}.rt62.11
Summary: Linux Kernel
License: GPLv2
URL: http://www.kernel.org/
@ -172,6 +172,9 @@ install -m 644 /boot/dtb-%{KernelVer}/overlays/README /boot/overlays/
/lib/modules/%{KernelVer}
%changelog
* Tue Jun 18 2024 zhangyu <zhangyu4@kylinos.cn> - 5.10.0-208.0.0.11
- - update preempt-RT to openEuler 5.10.0-208.0.0
* Mon Dec 30 2023 zhangyu <zhangyu4@kylinos.cn> - 5.10.0-161.0.0.10
- - update preempt-RT to openEuler 5.10.0-161.0.0