From 00288d2b4219a24d5e7163cabfd9dbadd36530a1 Mon Sep 17 00:00:00 2001 From: Hongchen Zhang Date: Wed, 26 Oct 2022 15:40:44 +0800 Subject: [PATCH 1/2] kernel-headers: exclude unnecessary files do not include cpuidle.h and cpufreq.h,these two files are included in kernel-tools-devel package. category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/I5VTY2 Signed-off-by: Hongchen Zhang --- kernel.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/kernel.spec b/kernel.spec index a537878..4972b60 100644 --- a/kernel.spec +++ b/kernel.spec @@ -25,7 +25,7 @@ %global upstream_sublevel 0 %global devel_release 10 %global maintenance_release .0.0 -%global pkg_release .7 +%global pkg_release .8 %define with_debuginfo 1 # Do not recompute the build-id of vmlinux in find-debuginfo.sh @@ -869,6 +869,8 @@ fi %files headers %defattr (-, root, root) /usr/include/* +%exclude %{_includedir}/cpufreq.h +%exclude %{_includedir}/cpuidle.h %if %{with_perf} %files -n perf @@ -954,6 +956,8 @@ fi %endif %changelog +* Wed Mar 6 2024 Hongchen Zhang - 6.6.0-10.0.0.8 +- exclude cpufreq.h and cpuidle.h from kernel-headers package * Mon Feb 26 2024 huangzq6 - 6.6.0-10.0.0.7 - add signature for vmlinux -- Gitee From 126c97dd16915273a43335199a5ab9585dba2c59 Mon Sep 17 00:00:00 2001 From: Hongchen Zhang Date: Thu, 15 Dec 2022 02:08:11 +0800 Subject: [PATCH 2/2] Add LoongArch support modify kernel.spec for loongarch64 support category: feature bugzilla: https://gitee.com/src-openeuler/kernel/issues/I66DDA Signed-off-by: Hongchen Zhang --- kernel.spec | 40 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 37 insertions(+), 3 deletions(-) diff --git a/kernel.spec b/kernel.spec index 4972b60..858cbaf 100644 --- a/kernel.spec +++ b/kernel.spec @@ -16,7 +16,7 @@ %define modsign_cmd %{SOURCE10} -%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/ -e s/riscv.*/riscv/) +%global Arch $(echo %{_host_cpu} | sed -e s/i.86/x86/ -e s/x86_64/x86/ -e s/aarch64.*/arm64/ -e s/riscv.*/riscv/ -e s/loongarch64/loongarch/) %global KernelVer %{version}-%{release}.%{_target_cpu} %global debuginfodir /usr/lib/debug @@ -25,7 +25,7 @@ %global upstream_sublevel 0 %global devel_release 10 %global maintenance_release .0.0 -%global pkg_release .8 +%global pkg_release .9 %define with_debuginfo 1 # Do not recompute the build-id of vmlinux in find-debuginfo.sh @@ -134,7 +134,7 @@ Provides: kernel-uname-r = %{KernelVer} kernel=%{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 riscv64 +ExclusiveArch: noarch aarch64 i686 x86_64 riscv64 loongarch64 ExclusiveOS: Linux %if %{with_perf} @@ -382,7 +382,21 @@ sed -i arch/arm64/configs/openeuler_defconfig -e 's/^CONFIG_ARM64_VA_BITS_.*/CON %global make %{__make} %{?clang_make_opts} HOSTCFLAGS="%{?build_cflags}" HOSTLDFLAGS="%{?build_ldflags}" +%ifarch loongarch64 + +%if 0%{with_signmodules} +echo "CONFIG_MODULE_SIG=y" >>arch/loongarch/configs/loongson3_defconfig +%endif + +%if 0%{with_debuginfo} +echo "CONFIG_DEBUG_INFO=y" >>arch/loongarch/configs/loongson3_defconfig +%endif + +make ARCH=%{Arch} loongson3_defconfig + +%else %{make} ARCH=%{Arch} openeuler_defconfig +%endif %if %{with clang_lto} scripts/config -e LTO_CLANG_FULL @@ -498,7 +512,12 @@ cd linux-%{KernelVer} mkdir -p $RPM_BUILD_ROOT/boot dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-%{KernelVer}.img bs=1M count=20 +%ifarch loongarch64 +strip -s vmlinux -o vmlinux.elf +install -m 755 vmlinux.elf $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer} +%else install -m 755 $(make -s image_name) $RPM_BUILD_ROOT/boot/vmlinuz-%{KernelVer} +%endif %if 0%{?openEuler_sign_rsa} echo "start sign" @@ -802,6 +821,12 @@ fi if [ -d /lib/modules/%{KernelVer} ] && [ "`ls -A /lib/modules/%{KernelVer}`" = "" ]; then rm -rf /lib/modules/%{KernelVer} fi +if [ `uname -i` == "loongarch64" ];then + [ -f /etc/grub2.cfg ] && GRUB_CFG=`readlink -f /etc/grub2.cfg` + [ "x${GRUB_CFG}" == "x" ] && [ -f /etc/grub2-efi.cfg ] && GRUB_CFG=`readlink -f /etc/grub2-efi.cfg` + [ "x${GRUB_CFG}" == "x" ] && [ -f /boot/efi/EFI/openEuler/grub.cfg ] && GRUB_CFG=/boot/efi/EFI/openEuler/grub.cfg + [ "x${GRUB_CFG}" != "x" ] && grub2-mkconfig -o ${GRUB_CFG} +fi %posttrans %{_sbindir}/new-kernel-pkg --package kernel --mkinitrd --dracut --depmod --update %{KernelVer} || exit $? @@ -810,6 +835,13 @@ if [ `uname -i` == "aarch64" ] && [ -f /boot/EFI/grub2/grub.cfg ]; then /usr/bin/sh %{_sbindir}/mkgrub-menu-%{version}-%{devel_release}%{?maintenance_release}%{?pkg_release}.sh %{version}-%{release}.aarch64 /boot/EFI/grub2/grub.cfg update fi +if [ `uname -i` == "loongarch64" ];then + [ -f /etc/grub2.cfg ] && GRUB_CFG=`readlink -f /etc/grub2.cfg` + [ "x${GRUB_CFG}" == "x" ] && [ -f /etc/grub2-efi.cfg ] && GRUB_CFG=`readlink -f /etc/grub2-efi.cfg` + [ "x${GRUB_CFG}" == "x" ] && [ -f /boot/efi/EFI/openEuler/grub.cfg ] && GRUB_CFG=/boot/efi/EFI/openEuler/grub.cfg + [ "x${GRUB_CFG}" != "x" ] && grub2-mkconfig -o ${GRUB_CFG} + grubby --set-default=/boot/vmlinuz-%{KernelVer} +fi if [ -x %{_sbindir}/weak-modules ] then %{_sbindir}/weak-modules --add-kernel %{KernelVer} || exit $? @@ -956,6 +988,8 @@ fi %endif %changelog +* Wed Mar 6 2024 Hongchen Zhang - 6.6.0-10.0.0.9 +- add LoongArch support * Wed Mar 6 2024 Hongchen Zhang - 6.6.0-10.0.0.8 - exclude cpufreq.h and cpuidle.h from kernel-headers package * Mon Feb 26 2024 huangzq6 - 6.6.0-10.0.0.7 -- Gitee