forked from pool/kernel-source
Compare commits
5 Commits
Author | SHA256 | Date | |
---|---|---|---|
f9cd41f571 | |||
b804c8cd29 | |||
|
147ddc8b56 | ||
1ea72e2a6a | |||
|
afcab19f66 |
@@ -422,9 +422,8 @@ General:
|
|||||||
|
|
||||||
Loadable kernel modules:
|
Loadable kernel modules:
|
||||||
|
|
||||||
* Peter Jay Salzman, Michael Burian, Ori Pomerantz: The Linux Kernel Module
|
* The Linux Kernel Module Programming Guide,
|
||||||
Programming Guide, Version 2.6,
|
<https://sysprog21.github.io/lkmpg/>.
|
||||||
<https://tldp.org/LDP/lkmpg/2.6/html/index.html>.
|
|
||||||
|
|
||||||
Kernel module packages:
|
Kernel module packages:
|
||||||
|
|
||||||
|
@@ -10,23 +10,29 @@ declare -a IGNORED_CONFIGS_RE=(
|
|||||||
'AS_VERSION'
|
'AS_VERSION'
|
||||||
'AS_WRUSS' # x86_32
|
'AS_WRUSS' # x86_32
|
||||||
'BUILTIN_RETURN_ADDRESS_STRIPS_PAC'
|
'BUILTIN_RETURN_ADDRESS_STRIPS_PAC'
|
||||||
|
'CC_ASM_FLAG_OUTPUT_BROKEN'
|
||||||
'CC_CAN_[A-Z_]*'
|
'CC_CAN_[A-Z_]*'
|
||||||
'CC_HAS_[A-Z_]*'
|
'CC_HAS_[A-Z_]*'
|
||||||
'CC_HAVE_[A-Z_]*'
|
'CC_HAVE_[A-Z_]*'
|
||||||
'CC_VERSION_TEXT'
|
'CC_VERSION_TEXT'
|
||||||
|
'DRM_MSM_VALIDATE_XML'
|
||||||
'DYNAMIC_SIGFRAME'
|
'DYNAMIC_SIGFRAME'
|
||||||
'FTRACE_MCOUNT_USE_[A-Z_]*'
|
'FTRACE_MCOUNT_USE_[A-Z_]*'
|
||||||
|
'GCC_ASM_FLAG_OUTPUT_BROKEN'
|
||||||
'GCC_ASM_GOTO_OUTPUT_BROKEN'
|
'GCC_ASM_GOTO_OUTPUT_BROKEN'
|
||||||
'GCC_ASM_GOTO_OUTPUT_WORKAROUND'
|
'GCC_ASM_GOTO_OUTPUT_WORKAROUND'
|
||||||
'GCC_VERSION'
|
'GCC_VERSION'
|
||||||
'G*CC[0-9]*_NO_[A-Z_]*'
|
'G*CC[0-9]*_NO_[A-Z_]*'
|
||||||
'HAVE_[A-Z]*_COMPILER'
|
'HAVE_[A-Z]*_COMPILER'
|
||||||
|
'HAVE_RUST'
|
||||||
'HAVE_SHADOW_CALL_STACK'
|
'HAVE_SHADOW_CALL_STACK'
|
||||||
|
'LD_CAN_[A-Z_]*'
|
||||||
'LD_VERSION'
|
'LD_VERSION'
|
||||||
'OBJTOOL'
|
'OBJTOOL'
|
||||||
'PAHOLE_HAS_[A-Z0-9_]*'
|
'PAHOLE_HAS_[A-Z0-9_]*'
|
||||||
'PAHOLE_VERSION'
|
'PAHOLE_VERSION'
|
||||||
'RISCV_ISA_[A-Z_]*'
|
'RISCV_ISA_[A-Z_]*'
|
||||||
|
'RUSTC_SUPPORTS_[A-Z0-9_]*'
|
||||||
'TOOLCHAIN_HAS_[A-Z_]*'
|
'TOOLCHAIN_HAS_[A-Z_]*'
|
||||||
'TOOLCHAIN_NEEDS_[A-Z_]*'
|
'TOOLCHAIN_NEEDS_[A-Z_]*'
|
||||||
'TOOLS_SUPPORT_[A-Z_]*'
|
'TOOLS_SUPPORT_[A-Z_]*'
|
||||||
|
10
config.conf
10
config.conf
@@ -8,17 +8,17 @@
|
|||||||
# kernel-binary and kernel-source rely on this
|
# kernel-binary and kernel-source rely on this
|
||||||
#
|
#
|
||||||
|
|
||||||
+i386 i386/pae
|
|
||||||
+i386 i386/default
|
|
||||||
+i386 -syms i386/debug
|
|
||||||
+i386 i386/vanilla
|
|
||||||
|
|
||||||
+x86_64 x86_64/default
|
+x86_64 x86_64/default
|
||||||
+x86_64 -syms x86_64/debug
|
+x86_64 -syms x86_64/debug
|
||||||
- x86_64/syzkaller
|
- x86_64/syzkaller
|
||||||
+x86_64 x86_64/vanilla
|
+x86_64 x86_64/vanilla
|
||||||
+x86_64 -syms x86_64/kvmsmall
|
+x86_64 -syms x86_64/kvmsmall
|
||||||
|
|
||||||
|
+i386 i386/pae
|
||||||
|
+i386 i386/default
|
||||||
|
+i386 -syms i386/debug
|
||||||
|
+i386 i386/vanilla
|
||||||
|
|
||||||
+ppc64le ppc64le/default
|
+ppc64le ppc64le/default
|
||||||
+ppc64le -syms ppc64le/debug
|
+ppc64le -syms ppc64le/debug
|
||||||
+ppc64le ppc64le/vanilla
|
+ppc64le ppc64le/vanilla
|
||||||
|
@@ -1,5 +1,5 @@
|
|||||||
# The version of the main tarball to use
|
# The version of the main tarball to use
|
||||||
SRCVERSION=6.10
|
SRCVERSION=6.14
|
||||||
# variant of the kernel-source package, either empty or "-rt"
|
# variant of the kernel-source package, either empty or "-rt"
|
||||||
VARIANT=
|
VARIANT=
|
||||||
# enable kernel module compression
|
# enable kernel module compression
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:02ee08e59c6469a9ed4ef7f357fc1a80b83b14dad2143ce5306cd800478bc1d2
|
oid sha256:154001349c54ec580b4944c2252b4e396da9fd8b3c5ad6362de8e59fb7815305
|
||||||
size 297858
|
size 306545
|
||||||
|
20676
dtb-aarch64.changes
20676
dtb-aarch64.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package dtb-aarch64
|
# spec file for package dtb-aarch64
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,18 +16,18 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: dtb-aarch64
|
Name: dtb-aarch64
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -90,7 +90,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -160,7 +159,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
|
20676
dtb-armv6l.changes
20676
dtb-armv6l.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package dtb-armv6l
|
# spec file for package dtb-armv6l
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,18 +16,18 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: dtb-armv6l
|
Name: dtb-armv6l
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -90,7 +90,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -160,7 +159,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
|
20676
dtb-armv7l.changes
20676
dtb-armv7l.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package dtb-armv7l
|
# spec file for package dtb-armv7l
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,18 +16,18 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: dtb-armv7l
|
Name: dtb-armv7l
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -90,7 +90,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -160,7 +159,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -658,33 +656,6 @@ cd /boot
|
|||||||
%dir %{dtbdir}/ti/keystone
|
%dir %{dtbdir}/ti/keystone
|
||||||
%{dtbdir}/ti/keystone/keystone-*.dtb
|
%{dtbdir}/ti/keystone/keystone-*.dtb
|
||||||
|
|
||||||
%package -n dtb-meson6
|
|
||||||
Summary: Amlogic Meson 6 based systems
|
|
||||||
Group: System/Boot
|
|
||||||
Provides: multiversion(dtb)
|
|
||||||
Requires(post): coreutils
|
|
||||||
|
|
||||||
%description -n dtb-meson6
|
|
||||||
Device Tree files for Amlogic Meson 6 based systems.
|
|
||||||
|
|
||||||
%post -n dtb-meson6
|
|
||||||
cd /boot
|
|
||||||
# If /boot/dtb is a symlink, remove it, so that we can replace it.
|
|
||||||
[ -d dtb ] && [ -L dtb ] && rm -f dtb
|
|
||||||
# Unless /boot/dtb exists as real directory, create a symlink.
|
|
||||||
[ -d dtb ] || ln -sf dtb-%kernelrelease dtb
|
|
||||||
|
|
||||||
%ifarch %arm aarch64 riscv64
|
|
||||||
%files -n dtb-meson6 -f dtb-meson6.list
|
|
||||||
%else
|
|
||||||
%files -n dtb-meson6
|
|
||||||
%endif
|
|
||||||
%defattr(-,root,root)
|
|
||||||
%ghost /boot/dtb
|
|
||||||
%dir %{dtbdir}
|
|
||||||
%dir %{dtbdir}/amlogic
|
|
||||||
%{dtbdir}/amlogic/meson6-*.dtb
|
|
||||||
|
|
||||||
%package -n dtb-meson8
|
%package -n dtb-meson8
|
||||||
Summary: Amlogic Meson 8 based systems
|
Summary: Amlogic Meson 8 based systems
|
||||||
Group: System/Boot
|
Group: System/Boot
|
||||||
@@ -1384,7 +1355,7 @@ export DTC_FLAGS="-R 4 -p 0x1000"
|
|||||||
DTC_FLAGS="$DTC_FLAGS -@"
|
DTC_FLAGS="$DTC_FLAGS -@"
|
||||||
|
|
||||||
cd $source/arch/arm/boot/dts
|
cd $source/arch/arm/boot/dts
|
||||||
for dts in ti/omap/am335x-*.dts ti/omap/am3517*.dts ti/omap/am57xx-*.dts marvell/armada-370-*.dts marvell/armada-375-*.dts marvell/armada-385-*.dts marvell/armada-388-*.dts marvell/armada-398-*.dts marvell/armada-xp-*.dts broadcom/bcm2836*.dts marvell/dove-*.dts samsung/exynos4*.dts samsung/exynos5*.dts nxp/imx/imx5*.dts nxp/imx/imx6*.dts nxp/imx/imx7*.dts ti/keystone/keystone-*.dts amlogic/meson6-*.dts amlogic/meson8-*.dts amlogic/meson8b-*.dts mediatek/mt76*.dts ti/omap/omap3*.dts ti/omap/omap4*.dts ti/omap/omap5*.dts qcom/qcom-*.dts rockchip/rk3*.dts intel/socfpga/socfpga_*.dts st/ste-*.dts allwinner/sun4i-*.dts allwinner/sun5i-*.dts allwinner/sun6i-*.dts allwinner/sun7i-*.dts allwinner/sun8i-*.dts allwinner/sun9i-*.dts nvidia/tegra20-*.dts nvidia/tegra30-*.dts nvidia/tegra114-*.dts nvidia/tegra124-*.dts arm/vexpress-*.dts nxp/vf/vf500-*.dts nxp/vf/vf610-*.dts xen/xenvm-*.dts xilinx/zynq-*.dts ; do
|
for dts in ti/omap/am335x-*.dts ti/omap/am3517*.dts ti/omap/am57xx-*.dts marvell/armada-370-*.dts marvell/armada-375-*.dts marvell/armada-385-*.dts marvell/armada-388-*.dts marvell/armada-398-*.dts marvell/armada-xp-*.dts broadcom/bcm2836*.dts marvell/dove-*.dts samsung/exynos4*.dts samsung/exynos5*.dts nxp/imx/imx5*.dts nxp/imx/imx6*.dts nxp/imx/imx7*.dts ti/keystone/keystone-*.dts amlogic/meson8-*.dts amlogic/meson8b-*.dts mediatek/mt76*.dts ti/omap/omap3*.dts ti/omap/omap4*.dts ti/omap/omap5*.dts qcom/qcom-*.dts rockchip/rk3*.dts intel/socfpga/socfpga_*.dts st/ste-*.dts allwinner/sun4i-*.dts allwinner/sun5i-*.dts allwinner/sun6i-*.dts allwinner/sun7i-*.dts allwinner/sun8i-*.dts allwinner/sun9i-*.dts nvidia/tegra20-*.dts nvidia/tegra30-*.dts nvidia/tegra114-*.dts nvidia/tegra124-*.dts arm/vexpress-*.dts nxp/vf/vf500-*.dts nxp/vf/vf610-*.dts xen/xenvm-*.dts xilinx/zynq-*.dts ; do
|
||||||
target=${dts%*.dts}
|
target=${dts%*.dts}
|
||||||
mkdir -p $PPDIR/$(dirname $target)
|
mkdir -p $PPDIR/$(dirname $target)
|
||||||
cpp -x assembler-with-cpp -undef -D__DTS__ -nostdinc -I. -I$SRCDIR/include/ -I$SRCDIR/scripts/dtc/include-prefixes/ -P $target.dts -o $PPDIR/$target.dts
|
cpp -x assembler-with-cpp -undef -D__DTS__ -nostdinc -I. -I$SRCDIR/include/ -I$SRCDIR/scripts/dtc/include-prefixes/ -P $target.dts -o $PPDIR/$target.dts
|
||||||
@@ -1393,7 +1364,7 @@ done
|
|||||||
|
|
||||||
%install
|
%install
|
||||||
cd pp
|
cd pp
|
||||||
for dts in ti/omap/am335x-*.dts ti/omap/am3517*.dts ti/omap/am57xx-*.dts marvell/armada-370-*.dts marvell/armada-375-*.dts marvell/armada-385-*.dts marvell/armada-388-*.dts marvell/armada-398-*.dts marvell/armada-xp-*.dts broadcom/bcm2836*.dts marvell/dove-*.dts samsung/exynos4*.dts samsung/exynos5*.dts nxp/imx/imx5*.dts nxp/imx/imx6*.dts nxp/imx/imx7*.dts ti/keystone/keystone-*.dts amlogic/meson6-*.dts amlogic/meson8-*.dts amlogic/meson8b-*.dts mediatek/mt76*.dts ti/omap/omap3*.dts ti/omap/omap4*.dts ti/omap/omap5*.dts qcom/qcom-*.dts rockchip/rk3*.dts intel/socfpga/socfpga_*.dts st/ste-*.dts allwinner/sun4i-*.dts allwinner/sun5i-*.dts allwinner/sun6i-*.dts allwinner/sun7i-*.dts allwinner/sun8i-*.dts allwinner/sun9i-*.dts nvidia/tegra20-*.dts nvidia/tegra30-*.dts nvidia/tegra114-*.dts nvidia/tegra124-*.dts arm/vexpress-*.dts nxp/vf/vf500-*.dts nxp/vf/vf610-*.dts xen/xenvm-*.dts xilinx/zynq-*.dts ; do
|
for dts in ti/omap/am335x-*.dts ti/omap/am3517*.dts ti/omap/am57xx-*.dts marvell/armada-370-*.dts marvell/armada-375-*.dts marvell/armada-385-*.dts marvell/armada-388-*.dts marvell/armada-398-*.dts marvell/armada-xp-*.dts broadcom/bcm2836*.dts marvell/dove-*.dts samsung/exynos4*.dts samsung/exynos5*.dts nxp/imx/imx5*.dts nxp/imx/imx6*.dts nxp/imx/imx7*.dts ti/keystone/keystone-*.dts amlogic/meson8-*.dts amlogic/meson8b-*.dts mediatek/mt76*.dts ti/omap/omap3*.dts ti/omap/omap4*.dts ti/omap/omap5*.dts qcom/qcom-*.dts rockchip/rk3*.dts intel/socfpga/socfpga_*.dts st/ste-*.dts allwinner/sun4i-*.dts allwinner/sun5i-*.dts allwinner/sun6i-*.dts allwinner/sun7i-*.dts allwinner/sun8i-*.dts allwinner/sun9i-*.dts nvidia/tegra20-*.dts nvidia/tegra30-*.dts nvidia/tegra114-*.dts nvidia/tegra124-*.dts arm/vexpress-*.dts nxp/vf/vf500-*.dts nxp/vf/vf610-*.dts xen/xenvm-*.dts xilinx/zynq-*.dts ; do
|
||||||
target=${dts%*.dts}
|
target=${dts%*.dts}
|
||||||
install -m 755 -d %{buildroot}%{dtbdir}/$(dirname $target)
|
install -m 755 -d %{buildroot}%{dtbdir}/$(dirname $target)
|
||||||
# install -m 644 COPYING %{buildroot}%{dtbdir}/$(dirname $target)
|
# install -m 644 COPYING %{buildroot}%{dtbdir}/$(dirname $target)
|
||||||
@@ -1421,7 +1392,6 @@ for dts in ti/omap/am335x-*.dts ti/omap/am3517*.dts ti/omap/am57xx-*.dts marvell
|
|||||||
nxp/imx/imx6*.dts) pkgname=dtb-imx6;;
|
nxp/imx/imx6*.dts) pkgname=dtb-imx6;;
|
||||||
nxp/imx/imx7*.dts) pkgname=dtb-imx7;;
|
nxp/imx/imx7*.dts) pkgname=dtb-imx7;;
|
||||||
ti/keystone/keystone-*.dts) pkgname=dtb-keystone;;
|
ti/keystone/keystone-*.dts) pkgname=dtb-keystone;;
|
||||||
amlogic/meson6-*.dts) pkgname=dtb-meson6;;
|
|
||||||
amlogic/meson8-*.dts) pkgname=dtb-meson8;;
|
amlogic/meson8-*.dts) pkgname=dtb-meson8;;
|
||||||
amlogic/meson8b-*.dts) pkgname=dtb-meson8b;;
|
amlogic/meson8b-*.dts) pkgname=dtb-meson8b;;
|
||||||
mediatek/mt76*.dts) pkgname=dtb-mt76;;
|
mediatek/mt76*.dts) pkgname=dtb-mt76;;
|
||||||
|
20676
dtb-riscv64.changes
20676
dtb-riscv64.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package dtb-riscv64
|
# spec file for package dtb-riscv64
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,18 +16,18 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: dtb-riscv64
|
Name: dtb-riscv64
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -90,7 +90,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -160,7 +159,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
|
20676
kernel-64kb.changes
20676
kernel-64kb.changes
File diff suppressed because it is too large
Load Diff
107
kernel-64kb.spec
107
kernel-64kb.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-64kb
|
# spec file for package kernel-64kb
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor 64kb
|
%define build_flavor 64kb
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-64kb
|
Name: kernel-64kb
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -494,14 +496,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -772,6 +775,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -780,6 +786,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -808,7 +815,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -817,7 +823,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -847,17 +853,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1276,6 +1279,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1468,14 +1474,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1664,17 +1665,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1685,7 +1682,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1798,7 +1794,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1879,7 +1876,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1977,7 +1974,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1988,7 +1985,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
@@ -31,6 +31,8 @@
|
|||||||
%define supported_modules_check @SUPPORTED_MODULES_CHECK@
|
%define supported_modules_check @SUPPORTED_MODULES_CHECK@
|
||||||
%define build_flavor @FLAVOR@
|
%define build_flavor @FLAVOR@
|
||||||
%define generate_compile_commands @GENERATE_COMPILE_COMMANDS@
|
%define generate_compile_commands @GENERATE_COMPILE_COMMANDS@
|
||||||
|
%define gcc_package @GCC_PACKAGE@
|
||||||
|
%define gcc_compiler @GCC_COMPILER@
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -218,14 +221,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -577,6 +581,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -585,6 +592,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
@PROVIDES_OBSOLETES_DEVEL@
|
@PROVIDES_OBSOLETES_DEVEL@
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
@@ -614,7 +622,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -623,7 +630,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -653,17 +660,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -800,6 +804,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -992,14 +999,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1188,17 +1190,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1209,7 +1207,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1322,7 +1319,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1403,7 +1401,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1501,7 +1499,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1512,7 +1510,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-debug.changes
20676
kernel-debug.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-debug
|
# spec file for package kernel-debug
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor debug
|
%define build_flavor debug
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-debug
|
Name: kernel-debug
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -492,14 +494,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -764,6 +767,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -772,6 +778,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -800,7 +807,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -809,7 +815,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -839,17 +845,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1268,6 +1271,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1460,14 +1466,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1656,17 +1657,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1677,7 +1674,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1790,7 +1786,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1871,7 +1868,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1969,7 +1966,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1980,7 +1977,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-default.changes
20676
kernel-default.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-default
|
# spec file for package kernel-default
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor default
|
%define build_flavor default
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-default
|
Name: kernel-default
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -531,14 +533,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -860,6 +863,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -868,6 +874,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%ifarch %ix86
|
%ifarch %ix86
|
||||||
Provides: kernel-trace-devel = 3.13
|
Provides: kernel-trace-devel = 3.13
|
||||||
Obsoletes: kernel-trace-devel <= 3.13
|
Obsoletes: kernel-trace-devel <= 3.13
|
||||||
@@ -916,7 +923,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -925,7 +931,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -955,17 +961,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1384,6 +1387,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1576,14 +1582,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1772,17 +1773,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1793,7 +1790,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1906,7 +1902,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1987,7 +1984,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -2085,7 +2082,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -2096,7 +2093,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-docs.changes
20676
kernel-docs.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-docs
|
# spec file for package kernel-docs
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,21 +16,21 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define build_html 1
|
%define build_html 1
|
||||||
%define build_pdf 0
|
%define build_pdf 0
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-docs
|
Name: kernel-docs
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -133,7 +133,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -203,7 +202,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -285,6 +283,8 @@ cd linux-%srcversion
|
|||||||
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# for reproducible builds (bsc#1238303)
|
||||||
|
export PARALLELISM=1
|
||||||
cd linux-%srcversion
|
cd linux-%srcversion
|
||||||
export LANG=en_US.utf8
|
export LANG=en_US.utf8
|
||||||
%if %build_html
|
%if %build_html
|
||||||
|
@@ -147,6 +147,8 @@ cd linux-%srcversion
|
|||||||
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
# for reproducible builds (bsc#1238303)
|
||||||
|
export PARALLELISM=1
|
||||||
cd linux-%srcversion
|
cd linux-%srcversion
|
||||||
export LANG=en_US.utf8
|
export LANG=en_US.utf8
|
||||||
%if %build_html
|
%if %build_html
|
||||||
|
20676
kernel-kvmsmall.changes
20676
kernel-kvmsmall.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-kvmsmall
|
# spec file for package kernel-kvmsmall
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor kvmsmall
|
%define build_flavor kvmsmall
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-kvmsmall
|
Name: kernel-kvmsmall
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -498,14 +500,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -788,6 +791,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -796,6 +802,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -824,7 +831,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -833,7 +839,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -863,17 +869,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1292,6 +1295,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1484,14 +1490,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1680,17 +1681,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1701,7 +1698,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1814,7 +1810,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1895,7 +1892,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1993,7 +1990,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -2004,7 +2001,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-lpae.changes
20676
kernel-lpae.changes
File diff suppressed because it is too large
Load Diff
107
kernel-lpae.spec
107
kernel-lpae.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-lpae
|
# spec file for package kernel-lpae
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor lpae
|
%define build_flavor lpae
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-lpae
|
Name: kernel-lpae
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -492,14 +494,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -764,6 +767,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -772,6 +778,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -800,7 +807,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -809,7 +815,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -839,17 +845,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1268,6 +1271,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1460,14 +1466,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1656,17 +1657,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1677,7 +1674,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1790,7 +1786,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1871,7 +1868,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1969,7 +1966,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1980,7 +1977,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-obs-build.changes
20676
kernel-obs-build.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-obs-build
|
# spec file for package kernel-obs-build
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -19,7 +19,7 @@
|
|||||||
|
|
||||||
#!BuildIgnore: post-build-checks
|
#!BuildIgnore: post-build-checks
|
||||||
|
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
@@ -38,16 +38,16 @@
|
|||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
%global kernel_package kernel%kernel_flavor-srchash-5af77882e5891561a6c508a4a352a99c61465403
|
%global kernel_package kernel%kernel_flavor-srchash-ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%endif
|
%endif
|
||||||
%if 0%{?rhel_version}
|
%if 0%{?rhel_version}
|
||||||
%global kernel_package kernel
|
%global kernel_package kernel
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
Name: kernel-obs-build
|
Name: kernel-obs-build
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -127,7 +127,7 @@ export KERNEL_MODULES="
|
|||||||
loop dm-crypt essiv dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 btrfs
|
loop dm-crypt essiv dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 btrfs
|
||||||
xfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat
|
xfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat
|
||||||
nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth overlay 9p 9pnet_virtio qemu_fw_cfg
|
nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth overlay 9p 9pnet_virtio qemu_fw_cfg
|
||||||
algif_hash aegis128 xts bridge br_netfilter nf_nat xt_conntrack iptable_nat iptable_filter
|
algif_hash aegis128 xts bridge br_netfilter nf_nat nf_tables xt_conntrack iptable_nat iptable_filter
|
||||||
iso9660"
|
iso9660"
|
||||||
|
|
||||||
# manually load all modules to make sure they're available
|
# manually load all modules to make sure they're available
|
||||||
|
@@ -127,7 +127,7 @@ export KERNEL_MODULES="
|
|||||||
loop dm-crypt essiv dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 btrfs
|
loop dm-crypt essiv dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 btrfs
|
||||||
xfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat
|
xfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat
|
||||||
nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth overlay 9p 9pnet_virtio qemu_fw_cfg
|
nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth overlay 9p 9pnet_virtio qemu_fw_cfg
|
||||||
algif_hash aegis128 xts bridge br_netfilter nf_nat xt_conntrack iptable_nat iptable_filter
|
algif_hash aegis128 xts bridge br_netfilter nf_nat nf_tables xt_conntrack iptable_nat iptable_filter
|
||||||
iso9660"
|
iso9660"
|
||||||
|
|
||||||
# manually load all modules to make sure they're available
|
# manually load all modules to make sure they're available
|
||||||
|
20676
kernel-obs-qa.changes
20676
kernel-obs-qa.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-obs-qa
|
# spec file for package kernel-obs-qa
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,15 +17,15 @@
|
|||||||
# needsrootforbuild
|
# needsrootforbuild
|
||||||
|
|
||||||
|
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
Name: kernel-obs-qa
|
Name: kernel-obs-qa
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
|
20676
kernel-pae.changes
20676
kernel-pae.changes
File diff suppressed because it is too large
Load Diff
107
kernel-pae.spec
107
kernel-pae.spec
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-pae
|
# spec file for package kernel-pae
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor pae
|
%define build_flavor pae
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-pae
|
Name: kernel-pae
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -514,14 +516,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -828,6 +831,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -836,6 +842,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%ifarch %ix86
|
%ifarch %ix86
|
||||||
Provides: kernel-desktop-devel = 4.3
|
Provides: kernel-desktop-devel = 4.3
|
||||||
Obsoletes: kernel-desktop-devel <= 4.3
|
Obsoletes: kernel-desktop-devel <= 4.3
|
||||||
@@ -872,7 +879,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -881,7 +887,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -911,17 +917,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1340,6 +1343,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1532,14 +1538,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1728,17 +1729,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1749,7 +1746,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1862,7 +1858,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1943,7 +1940,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -2041,7 +2038,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -2052,7 +2049,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-source.changes
20676
kernel-source.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-source
|
# spec file for package kernel-source
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,19 +16,21 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-source
|
Name: kernel-source
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -105,7 +107,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -151,6 +152,7 @@ Recommends: dwarves >= 1.22
|
|||||||
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
Recommends: kernel-install-tools
|
Recommends: kernel-install-tools
|
||||||
%endif
|
%endif
|
||||||
|
Recommends: %gcc_package
|
||||||
%obsolete_rebuilds %name
|
%obsolete_rebuilds %name
|
||||||
|
|
||||||
# Force bzip2 instead of lzma compression to
|
# Force bzip2 instead of lzma compression to
|
||||||
@@ -270,6 +272,8 @@ fi
|
|||||||
linux-%kernelrelease%variant linux-%kernelrelease-vanilla
|
linux-%kernelrelease%variant linux-%kernelrelease-vanilla
|
||||||
cd linux-%kernelrelease-vanilla
|
cd linux-%kernelrelease-vanilla
|
||||||
%_sourcedir/apply-patches --vanilla %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches --vanilla %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
rm -f $(find . -name ".gitignore")
|
rm -f $(find . -name ".gitignore")
|
||||||
# Hardlink duplicate files automatically (from package fdupes).
|
# Hardlink duplicate files automatically (from package fdupes).
|
||||||
%fdupes $PWD
|
%fdupes $PWD
|
||||||
@@ -278,6 +282,8 @@ cd ..
|
|||||||
|
|
||||||
cd linux-%kernelrelease%variant
|
cd linux-%kernelrelease%variant
|
||||||
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
rm -f $(find . -name ".gitignore")
|
rm -f $(find . -name ".gitignore")
|
||||||
|
|
||||||
if [ -f %_sourcedir/localversion ] ; then
|
if [ -f %_sourcedir/localversion ] ; then
|
||||||
@@ -317,8 +323,9 @@ popd
|
|||||||
|
|
||||||
find %{buildroot}/usr/src/linux* -type f -name '*.[ch]' -perm /0111 -exec chmod -v a-x {} +
|
find %{buildroot}/usr/src/linux* -type f -name '*.[ch]' -perm /0111 -exec chmod -v a-x {} +
|
||||||
# OBS checks don't like /usr/bin/env in script interpreter lines
|
# OBS checks don't like /usr/bin/env in script interpreter lines
|
||||||
grep -Elr '^#! */usr/bin/env ' %{buildroot}/usr/src/linux* | while read f; do
|
grep -Elr '^#! */(usr/)?bin/env ' %{buildroot}/usr/src/linux* | while read f; do
|
||||||
sed -re '1 { s_^#! */usr/bin/env +/_#!/_ ; s_^#! */usr/bin/env +([^/])_#!/usr/bin/\1_ }' -i "$f"
|
sed -re '1 { s_^#! */usr/bin/env +/_#!/_ ; s_^#! */usr/bin/env +([^/])_#!/usr/bin/\1_ }' \
|
||||||
|
-re '1 { s_^#! */bin/env +/_#!/_ ; s_^#! */bin/env +([^/])_#!/usr/bin/\1_ }' -i "$f"
|
||||||
done
|
done
|
||||||
# kernel-source and kernel-$flavor-devel are built independently, but the
|
# kernel-source and kernel-$flavor-devel are built independently, but the
|
||||||
# shipped sources (/usr/src/linux/) need to be older than generated files
|
# shipped sources (/usr/src/linux/) need to be older than generated files
|
||||||
|
@@ -20,6 +20,8 @@
|
|||||||
%define patchversion @PATCHVERSION@
|
%define patchversion @PATCHVERSION@
|
||||||
%define git_commit @COMMIT_FULL@
|
%define git_commit @COMMIT_FULL@
|
||||||
%define variant @VARIANT@%{nil}
|
%define variant @VARIANT@%{nil}
|
||||||
|
%define gcc_package @GCC_PACKAGE@
|
||||||
|
%define gcc_compiler @GCC_COMPILER@
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
@@ -105,7 +107,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -151,6 +152,7 @@ Recommends: dwarves >= 1.22
|
|||||||
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
Recommends: kernel-install-tools
|
Recommends: kernel-install-tools
|
||||||
%endif
|
%endif
|
||||||
|
Recommends: %gcc_package
|
||||||
%obsolete_rebuilds %name
|
%obsolete_rebuilds %name
|
||||||
|
|
||||||
# Force bzip2 instead of lzma compression to
|
# Force bzip2 instead of lzma compression to
|
||||||
@@ -270,6 +272,8 @@ fi
|
|||||||
linux-%kernelrelease%variant linux-%kernelrelease-vanilla
|
linux-%kernelrelease%variant linux-%kernelrelease-vanilla
|
||||||
cd linux-%kernelrelease-vanilla
|
cd linux-%kernelrelease-vanilla
|
||||||
%_sourcedir/apply-patches --vanilla %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches --vanilla %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
rm -f $(find . -name ".gitignore")
|
rm -f $(find . -name ".gitignore")
|
||||||
# Hardlink duplicate files automatically (from package fdupes).
|
# Hardlink duplicate files automatically (from package fdupes).
|
||||||
%fdupes $PWD
|
%fdupes $PWD
|
||||||
@@ -278,6 +282,8 @@ cd ..
|
|||||||
|
|
||||||
cd linux-%kernelrelease%variant
|
cd linux-%kernelrelease%variant
|
||||||
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
%_sourcedir/apply-patches %_sourcedir/series.conf %my_builddir %symbols
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
rm -f $(find . -name ".gitignore")
|
rm -f $(find . -name ".gitignore")
|
||||||
|
|
||||||
if [ -f %_sourcedir/localversion ] ; then
|
if [ -f %_sourcedir/localversion ] ; then
|
||||||
@@ -317,8 +323,9 @@ popd
|
|||||||
|
|
||||||
find %{buildroot}/usr/src/linux* -type f -name '*.[ch]' -perm /0111 -exec chmod -v a-x {} +
|
find %{buildroot}/usr/src/linux* -type f -name '*.[ch]' -perm /0111 -exec chmod -v a-x {} +
|
||||||
# OBS checks don't like /usr/bin/env in script interpreter lines
|
# OBS checks don't like /usr/bin/env in script interpreter lines
|
||||||
grep -Elr '^#! */usr/bin/env ' %{buildroot}/usr/src/linux* | while read f; do
|
grep -Elr '^#! */(usr/)?bin/env ' %{buildroot}/usr/src/linux* | while read f; do
|
||||||
sed -re '1 { s_^#! */usr/bin/env +/_#!/_ ; s_^#! */usr/bin/env +([^/])_#!/usr/bin/\1_ }' -i "$f"
|
sed -re '1 { s_^#! */usr/bin/env +/_#!/_ ; s_^#! */usr/bin/env +([^/])_#!/usr/bin/\1_ }' \
|
||||||
|
-re '1 { s_^#! */bin/env +/_#!/_ ; s_^#! */bin/env +([^/])_#!/usr/bin/\1_ }' -i "$f"
|
||||||
done
|
done
|
||||||
# kernel-source and kernel-$flavor-devel are built independently, but the
|
# kernel-source and kernel-$flavor-devel are built independently, but the
|
||||||
# shipped sources (/usr/src/linux/) need to be older than generated files
|
# shipped sources (/usr/src/linux/) need to be older than generated files
|
||||||
|
20676
kernel-syms.changes
20676
kernel-syms.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-syms
|
# spec file for package kernel-syms
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -16,16 +16,16 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
Name: kernel-syms
|
Name: kernel-syms
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if %using_buildservice
|
%if %using_buildservice
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
|
20676
kernel-vanilla.changes
20676
kernel-vanilla.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-vanilla
|
# spec file for package kernel-vanilla
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor vanilla
|
%define build_flavor vanilla
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-vanilla
|
Name: kernel-vanilla
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -491,14 +493,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -760,6 +763,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -768,6 +774,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -796,7 +803,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -805,7 +811,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -835,17 +841,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1264,6 +1267,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1456,14 +1462,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1652,17 +1653,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1673,7 +1670,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1786,7 +1782,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1867,7 +1864,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1965,7 +1962,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1976,7 +1973,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
20676
kernel-zfcpdump.changes
20676
kernel-zfcpdump.changes
File diff suppressed because it is too large
Load Diff
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package kernel-zfcpdump
|
# spec file for package kernel-zfcpdump
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,9 +17,9 @@
|
|||||||
# needssslcertforbuild
|
# needssslcertforbuild
|
||||||
|
|
||||||
|
|
||||||
%define srcversion 6.10
|
%define srcversion 6.14
|
||||||
%define patchversion 6.10.9
|
%define patchversion 6.14.6
|
||||||
%define git_commit 5af77882e5891561a6c508a4a352a99c61465403
|
%define git_commit ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
%define variant %{nil}
|
%define variant %{nil}
|
||||||
%define compress_modules zstd
|
%define compress_modules zstd
|
||||||
%define compress_vmlinux xz
|
%define compress_vmlinux xz
|
||||||
@@ -31,15 +31,17 @@
|
|||||||
%define supported_modules_check 0
|
%define supported_modules_check 0
|
||||||
%define build_flavor zfcpdump
|
%define build_flavor zfcpdump
|
||||||
%define generate_compile_commands 1
|
%define generate_compile_commands 1
|
||||||
|
%define gcc_package gcc
|
||||||
|
%define gcc_compiler gcc
|
||||||
|
|
||||||
%include %_sourcedir/kernel-spec-macros
|
%include %_sourcedir/kernel-spec-macros
|
||||||
|
|
||||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,klp-symbols,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh,mkspec-dtb,check-module-license,splitflist,mergedep,moddep,modflist,kernel-subpackage-build})
|
||||||
|
|
||||||
Name: kernel-zfcpdump
|
Name: kernel-zfcpdump
|
||||||
Version: 6.10.9
|
Version: 6.14.6
|
||||||
%if 0%{?is_kotd}
|
%if 0%{?is_kotd}
|
||||||
Release: <RELEASE>.g5af7788
|
Release: <RELEASE>.gad69173
|
||||||
%else
|
%else
|
||||||
Release: 0
|
Release: 0
|
||||||
%endif
|
%endif
|
||||||
@@ -59,8 +61,8 @@ BuildRequires: flex
|
|||||||
# does not expand %%(...)
|
# does not expand %%(...)
|
||||||
%if "%build_flavor" == "syzkaller"
|
%if "%build_flavor" == "syzkaller"
|
||||||
# Needed by scripts/gcc-plugin.sh
|
# Needed by scripts/gcc-plugin.sh
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: %gcc_package-c++
|
||||||
BuildRequires: gcc-devel
|
BuildRequires: %gcc_package-devel
|
||||||
%endif
|
%endif
|
||||||
BuildRequires: hmaccalc
|
BuildRequires: hmaccalc
|
||||||
BuildRequires: libopenssl-devel
|
BuildRequires: libopenssl-devel
|
||||||
@@ -73,6 +75,7 @@ BuildRequires: pesign-obs-integration
|
|||||||
# pahole for CONFIG_DEBUG_INFO_BTF
|
# pahole for CONFIG_DEBUG_INFO_BTF
|
||||||
BuildRequires: dwarves >= 1.22
|
BuildRequires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
|
BuildRequires: %gcc_package
|
||||||
# for objtool
|
# for objtool
|
||||||
BuildRequires: libelf-devel
|
BuildRequires: libelf-devel
|
||||||
# required for 50-check-kernel-build-id rpm check
|
# required for 50-check-kernel-build-id rpm check
|
||||||
@@ -135,7 +138,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||||
|
|
||||||
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
%if 0%{?_project:1} && ( %(echo %_project | grep -Ex -f %_sourcedir/release-projects | grep -vc ^PTF) || %(echo %_project | grep -Ec "^(Devel:)?Kernel:") )
|
||||||
%define klp_symbols 1
|
%define klp_ipa_clones 1
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
|
||||||
@@ -145,7 +148,7 @@ ExclusiveArch: do_not_build
|
|||||||
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
%define split_extra ("%CONFIG_MODULES" == "y" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y")
|
||||||
|
|
||||||
%if "%CONFIG_MODULES" != "y"
|
%if "%CONFIG_MODULES" != "y"
|
||||||
%define klp_symbols 0
|
%define klp_ipa_clones 0
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
%global certs %( space="" ; for f in %_sourcedir/*.crt; do \
|
||||||
@@ -209,7 +212,6 @@ Source73: dtb.spec.in.in
|
|||||||
Source74: mkspec-dtb
|
Source74: mkspec-dtb
|
||||||
Source75: release-projects
|
Source75: release-projects
|
||||||
Source76: check-module-license
|
Source76: check-module-license
|
||||||
Source77: klp-symbols
|
|
||||||
Source78: modules.fips
|
Source78: modules.fips
|
||||||
Source79: splitflist
|
Source79: splitflist
|
||||||
Source80: mergedep
|
Source80: mergedep
|
||||||
@@ -279,7 +281,6 @@ NoSource: 73
|
|||||||
NoSource: 74
|
NoSource: 74
|
||||||
NoSource: 75
|
NoSource: 75
|
||||||
NoSource: 76
|
NoSource: 76
|
||||||
NoSource: 77
|
|
||||||
NoSource: 78
|
NoSource: 78
|
||||||
NoSource: 79
|
NoSource: 79
|
||||||
NoSource: 80
|
NoSource: 80
|
||||||
@@ -356,14 +357,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -494,14 +496,15 @@ Requires: suse-module-tools
|
|||||||
# For depmod (modutils is a dependency provided by both module-init-tools and
|
# For depmod (modutils is a dependency provided by both module-init-tools and
|
||||||
# kmod-compat)
|
# kmod-compat)
|
||||||
Requires(post): modutils
|
Requires(post): modutils
|
||||||
# This Requires is wrong, because the post/postun scripts have a
|
# Use OrderWithRequires to instruct the package manager to schedule the
|
||||||
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
|
# installation of bootloader and dracut related tools as if they were
|
||||||
# But, there is no way to tell rpm or yast to schedule the installation
|
# required. This will ensure they're there for post scripts without hard
|
||||||
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
|
# requiring them. (boo#1228659, boo#1240785)
|
||||||
# packages to install/update. Likewise, this is true for dracut.
|
OrderWithRequires(post): udev
|
||||||
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
|
OrderWithRequires(post): systemd-boot
|
||||||
Requires(post): perl-Bootloader >= 0.4.15
|
OrderWithRequires(post): perl-Bootloader
|
||||||
Requires(post): dracut
|
OrderWithRequires(post): update-bootloader
|
||||||
|
OrderWithRequires(post): dracut
|
||||||
# Install the package providing /etc/SuSE-release early enough, so that
|
# Install the package providing /etc/SuSE-release early enough, so that
|
||||||
# the grub entry has correct title (bnc#757565)
|
# the grub entry has correct title (bnc#757565)
|
||||||
Requires(post): distribution-release
|
Requires(post): distribution-release
|
||||||
@@ -772,6 +775,9 @@ Supplements: packageand(%name:kernel-devel%variant)
|
|||||||
Requires: kernel-source-vanilla = %version-%source_rel
|
Requires: kernel-source-vanilla = %version-%source_rel
|
||||||
Supplements: packageand(%name:kernel-source-vanilla)
|
Supplements: packageand(%name:kernel-source-vanilla)
|
||||||
%endif
|
%endif
|
||||||
|
%if "%{compress_modules}" == "zstd"
|
||||||
|
Requires: zstd
|
||||||
|
%endif
|
||||||
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
%if "%CONFIG_DEBUG_INFO_BTF_MODULES" == "y"
|
||||||
Requires: dwarves >= 1.22
|
Requires: dwarves >= 1.22
|
||||||
%endif
|
%endif
|
||||||
@@ -780,6 +786,7 @@ Requires: dwarves >= 1.22
|
|||||||
Provides: kernel-preempt-devel = %version-%release
|
Provides: kernel-preempt-devel = %version-%release
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
|
Requires: %gcc_package
|
||||||
%obsolete_rebuilds %name-devel
|
%obsolete_rebuilds %name-devel
|
||||||
PreReq: coreutils
|
PreReq: coreutils
|
||||||
|
|
||||||
@@ -808,7 +815,6 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
%dir /usr/src/linux-obj
|
%dir /usr/src/linux-obj
|
||||||
%dir /usr/src/linux-obj/%cpu_arch
|
%dir /usr/src/linux-obj/%cpu_arch
|
||||||
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
%ghost /usr/src/linux-obj/%cpu_arch_flavor
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/Symbols.list
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
%exclude %obj_install_dir/%cpu_arch_flavor/compile_commands.json
|
||||||
%endif
|
%endif
|
||||||
@@ -817,7 +823,7 @@ relink ../../linux-%{kernelrelease}%{variant}-obj/"%cpu_arch_flavor" /usr/src/li
|
|||||||
/usr/src/linux-obj/%kmp_target_cpu
|
/usr/src/linux-obj/%kmp_target_cpu
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%variant" == "-rt" && 0%livepatch_rt))
|
%if "%livepatch" != "" && "%CONFIG_SUSE_KERNEL_SUPPORTED" == "y" && (("%variant" == "" && %build_default) || ("%build_flavor" == "rt" && 0%livepatch_rt))
|
||||||
%if "%livepatch" == "kgraft"
|
%if "%livepatch" == "kgraft"
|
||||||
%define patch_package %{livepatch}-patch
|
%define patch_package %{livepatch}-patch
|
||||||
%else
|
%else
|
||||||
@@ -847,17 +853,14 @@ static, unlike the %{patch_package}-<kernel-version>-flavor package names.
|
|||||||
%dir %modules_dir
|
%dir %modules_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?klp_symbols} && "%livepatch" != ""
|
%if 0%{?klp_ipa_clones} && "%livepatch" != "" && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
%package %{livepatch}-devel
|
%package %{livepatch}-devel
|
||||||
Summary: Kernel symbols file used during kGraft patch development
|
Summary: Kernel symbols file used during kGraft patch development
|
||||||
Group: System/Kernel
|
Group: System/Kernel
|
||||||
Provides: klp-symbols = %version
|
|
||||||
|
|
||||||
%description %{livepatch}-devel
|
%description %{livepatch}-devel
|
||||||
This package brings a file named Symbols.list, which contains a list of all
|
This package brings ipa-clones files, which are used to to track
|
||||||
kernel symbols and its respective kernel object . This list is to be used by
|
set of functions where a code from another function can eventually occur.
|
||||||
the klp-convert tool, which helps livepatch developers by enabling automatic
|
|
||||||
symbol resolution.
|
|
||||||
|
|
||||||
%files %{livepatch}-devel -f livepatch-files
|
%files %{livepatch}-devel -f livepatch-files
|
||||||
%endif
|
%endif
|
||||||
@@ -1276,6 +1279,9 @@ cd linux-%srcversion
|
|||||||
%endif
|
%endif
|
||||||
%_sourcedir/series.conf .. $SYMBOLS
|
%_sourcedir/series.conf .. $SYMBOLS
|
||||||
|
|
||||||
|
sed -i -e 's/\$(CROSS_COMPILE)gcc/\$(CROSS_COMPILE)%gcc_compiler/g' Makefile
|
||||||
|
grep '\$(CROSS_COMPILE)%gcc_compiler' Makefile
|
||||||
|
|
||||||
cd %kernel_build_dir
|
cd %kernel_build_dir
|
||||||
|
|
||||||
# Override the timestamp 'uname -v' reports with the source timestamp and
|
# Override the timestamp 'uname -v' reports with the source timestamp and
|
||||||
@@ -1468,14 +1474,9 @@ while true; do
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
# Generate list of symbols that are used to create kernel livepatches
|
%if 0%{?klp_ipa_clones} && %generate_compile_commands
|
||||||
%if 0%{?klp_symbols}
|
|
||||||
%_sourcedir/klp-symbols . Symbols.list
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
|
||||||
# Generate compile_commands.json
|
# Generate compile_commands.json
|
||||||
make compile_commands.json
|
make compile_commands.json $MAKE_ARGS
|
||||||
%endif
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
@@ -1664,17 +1665,13 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
mkdir -p %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
cp Module.symvers %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
|
|
||||||
# List of symbols that are used to generate kernel livepatches
|
# List of ipa-clones that are used to to track set of functions where a code from another function can eventually occur.
|
||||||
%if 0%{?klp_symbols}
|
%if 0%{?klp_ipa_clones} && "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
||||||
cp Symbols.list %rpm_install_dir/%cpu_arch/%build_flavor
|
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/Symbols.list > %my_builddir/livepatch-files.no_dir
|
|
||||||
|
|
||||||
%if %generate_compile_commands
|
%if %generate_compile_commands
|
||||||
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
cp compile_commands.json %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/compile_commands.json >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if "%CONFIG_LIVEPATCH_IPA_CLONES" == "y"
|
|
||||||
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
find %kernel_build_dir -name "*.ipa-clones" ! -size 0 | sed -e 's|^%kernel_build_dir/||' | sort > ipa-clones.list
|
||||||
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
cp ipa-clones.list %rpm_install_dir/%cpu_arch/%build_flavor
|
||||||
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
echo %obj_install_dir/%cpu_arch/%build_flavor/ipa-clones.list >> %my_builddir/livepatch-files.no_dir
|
||||||
@@ -1685,7 +1682,6 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
-T ipa-clones.list -cf- | tar -C %rpm_install_dir/%cpu_arch/%build_flavor -xvf-
|
||||||
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
cat ipa-clones.list | sed -e 's|^|%obj_install_dir/%cpu_arch/%build_flavor/|' >> %my_builddir/livepatch-files.no_dir
|
||||||
%endif
|
%endif
|
||||||
%endif
|
|
||||||
|
|
||||||
# Table of types used in exported symbols (for modversion debugging).
|
# Table of types used in exported symbols (for modversion debugging).
|
||||||
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
%_sourcedir/modversions --pack . > %buildroot/boot/symtypes-%kernelrelease-%build_flavor
|
||||||
@@ -1798,7 +1794,8 @@ if [ %CONFIG_MODULES = y ]; then
|
|||||||
%rpm_install_dir/%cpu_arch_flavor \
|
%rpm_install_dir/%cpu_arch_flavor \
|
||||||
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
$(echo %srcversion | sed -r 's/^([0-9]+)\.([0-9]+).*/\1 \2/')
|
||||||
else
|
else
|
||||||
echo include ../../../%{basename:%src_install_dir}/Makefile > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
echo 'export KBUILD_OUTPUT = %obj_install_dir/%cpu_arch_flavor' > %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
|
echo 'include ../../../%{basename:%src_install_dir}/Makefile' >> %rpm_install_dir/%cpu_arch_flavor/Makefile
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -1879,7 +1876,7 @@ shopt -s nullglob dotglob
|
|||||||
fi
|
fi
|
||||||
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
} | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||||
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
( cd %buildroot ; find .%obj_install_dir/%cpu_arch_flavor -type f ; ) | \
|
||||||
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/Symbols[.]list$' -e '/ipa-clones[.]list$'| \
|
sed -e 's/^[.]//' | grep -v -e '[.]ipa-clones$' -e '/ipa-clones[.]list$'| \
|
||||||
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
||||||
|
|
||||||
{ echo %ghost /boot/%image
|
{ echo %ghost /boot/%image
|
||||||
@@ -1977,7 +1974,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
add_dirs_to_filelist %my_builddir/optional-modules > %my_builddir/kernel-optional.files
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?sle_version} >= 150000
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} >= 150000
|
||||||
# By default, loading unsupported modules is disabled on SLE through
|
# By default, loading unsupported modules is disabled on SLE through
|
||||||
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
# /etc/modprobe.d/10-unsupported-modules.conf from the suse-module-tools
|
||||||
# package.
|
# package.
|
||||||
@@ -1988,7 +1985,7 @@ add_dirs_to_filelist >> %my_builddir/kernel-devel.files
|
|||||||
# multiversion(kernel).
|
# multiversion(kernel).
|
||||||
|
|
||||||
modprobe_d_dir=/etc/modprobe.d
|
modprobe_d_dir=/etc/modprobe.d
|
||||||
%if 0%{?sle_version} > 150300
|
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
|
||||||
modprobe_d_dir=/lib/modprobe.d
|
modprobe_d_dir=/lib/modprobe.d
|
||||||
%endif
|
%endif
|
||||||
%if %{usrmerged}
|
%if %{usrmerged}
|
||||||
|
72
klp-symbols
72
klp-symbols
@@ -1,72 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e
|
|
||||||
export LC_COLLATE=C
|
|
||||||
|
|
||||||
usage()
|
|
||||||
{
|
|
||||||
echo "Tool to generate list of symbols that are used to build kernel livepatches"
|
|
||||||
echo
|
|
||||||
echo "Usage: ${0##*/} kernel_build_dir klp_symbols"
|
|
||||||
echo " kernel_build_dir Directory where to find the built kernel binaries"
|
|
||||||
echo " klp_symbols Output file with the list of symbols"
|
|
||||||
}
|
|
||||||
|
|
||||||
if test "$1" == "-h" -o "$1" == "--help" -o $# -ne 2 ; then
|
|
||||||
usage >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
KLP_DATA_VERSION="0.1"
|
|
||||||
KERNEL_BUILD_DIR="$1"
|
|
||||||
KLP_SYMBOLS="$2"
|
|
||||||
|
|
||||||
VMLINUX="$KERNEL_BUILD_DIR/vmlinux"
|
|
||||||
MODVER_DIR="$KERNEL_BUILD_DIR/.tmp_versions"
|
|
||||||
|
|
||||||
if ! test -f "$VMLINUX" ; then
|
|
||||||
echo "Error: Cannot open file: $VMLINUX" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! test -d "$MODVER_DIR" ; then
|
|
||||||
# kernel >= 5.3 has *.mod in the build tree
|
|
||||||
mod_cnt=$(find "$KERNEL_BUILD_DIR" -name '*.mod' | wc -l)
|
|
||||||
if [ $mod_cnt -eq 0 ]; then
|
|
||||||
echo "Error: Directory does not exist: $MODVER_DIR" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
MODVER_DIR="$KERNEL_BUILD_DIR"
|
|
||||||
fi
|
|
||||||
|
|
||||||
get_symbols()
|
|
||||||
{
|
|
||||||
nm -f posix "$1" | grep -v '\( [UN] \)\|\(\.L\|__crc_\)' | cut -d\ -f1
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "klp-convert-symbol-data.$KLP_DATA_VERSION" > "$KLP_SYMBOLS"
|
|
||||||
echo "*vmlinux" >> "$KLP_SYMBOLS"
|
|
||||||
get_symbols "$VMLINUX" >> "$KLP_SYMBOLS"
|
|
||||||
|
|
||||||
find "$MODVER_DIR" -iname '*.mod' | sort | while read KMOD ; do
|
|
||||||
if [ "$MODVER_DIR" = "$KERNEL_BUILD_DIR" ]; then
|
|
||||||
# kernel >= 5.3, just replace the suffix
|
|
||||||
KO_FILE="${KMOD%.mod}.ko"
|
|
||||||
else
|
|
||||||
# kernel <= 5.2, read .ko path and file from .mod file
|
|
||||||
KO_FILE="$(head -n1 $KMOD)"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# obtain module name and its object file by processing .ko file name
|
|
||||||
NO_SUFFIX="$(basename -s .ko $KO_FILE)"
|
|
||||||
KMOD_NAME="$(echo $NO_SUFFIX | sed 's/-/_/g')"
|
|
||||||
OBJ_FILE="$(dirname $KO_FILE)/$NO_SUFFIX.o"
|
|
||||||
|
|
||||||
# write module name to Symbols file
|
|
||||||
echo "*$KMOD_NAME" >> "$KLP_SYMBOLS"
|
|
||||||
|
|
||||||
# extract symbols from object file and write them to Symbols file
|
|
||||||
get_symbols "$OBJ_FILE" >> "$KLP_SYMBOLS"
|
|
||||||
done
|
|
||||||
|
|
||||||
exit 0
|
|
@@ -1,19 +0,0 @@
|
|||||||
-----BEGIN PGP SIGNATURE-----
|
|
||||||
Comment: This signature is for the .tar version of the archive
|
|
||||||
Comment: git archive --format tar --prefix=linux-6.10/ v6.10
|
|
||||||
Comment: git version 2.45.2
|
|
||||||
|
|
||||||
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmaUsSAACgkQONu9yGCS
|
|
||||||
aT78GBAAoIE07mO37CHmfOnlfold0fQ8pQbz66KrRp9vFbHlNF1k+t33mEpI3ZCw
|
|
||||||
b0mmuytDzcNYRHPiJWxjD6Z+5c/Sh/gTS4ciG9gdzVje2Hrd5zdMgHxBgDkkmcvU
|
|
||||||
bwPozW8AndTZt8HYlRlyaedRXI9aevYLl0SQmUgecfvyS29ZzHPjMBL5s5KOXu+8
|
|
||||||
ImhUysPRcQzSfW8jdKJIXklbx5pQ6Zc0v0KTOM1Qzj9ij/iwjlSXyPqIkXsyglBa
|
|
||||||
DcvqQ/eVgD6vRC11j+UQQC8NDGufGs6RUvjbedUW9/R1gTuppGotiJCe81Jslg32
|
|
||||||
zibTbn+8UNNZrgWfIsAPLJIfbwUzmFryWED/SrqMCqWHhuGzhwGDwBKcOiKYf767
|
|
||||||
SrGz+dE9ONipHvoX46EjIz5VwnbtWWUEjkjV356efrWwey96Ax64BOnB0py/aCmw
|
|
||||||
jg9FnXaiirPpZzEEg2LGFswx4oTh/NYNeSpF2v1zR16lBW0MRffRVHHt+gZbmgMj
|
|
||||||
A9dMUxBEXt5t/XFwM8F3fWWgzfM3ggigpIL5RWQWvPYdK32d7SELb6Bmeao6XhVj
|
|
||||||
bq6LHokDxHuboMowvaEPeodEnZcYC26A+LuLkY0AZZ6x0z9nNl1E6iVm9JZL4RsW
|
|
||||||
pGs7kc0RbMrNSkktsWsgDqgYxUWOx/eGfhFI2/dzMR1ELtstUBA=
|
|
||||||
=zwdu
|
|
||||||
-----END PGP SIGNATURE-----
|
|
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:774698422ee54c5f1e704456f37c65c06b51b4e9a8b0866f34580d86fef8e226
|
|
||||||
size 145142812
|
|
19
linux-6.14.tar.sign
Normal file
19
linux-6.14.tar.sign
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
-----BEGIN PGP SIGNATURE-----
|
||||||
|
Comment: This signature is for the .tar version of the archive
|
||||||
|
Comment: git archive --format tar --prefix=linux-6.14/ v6.14
|
||||||
|
Comment: git version 2.49.0
|
||||||
|
|
||||||
|
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmfhdasACgkQONu9yGCS
|
||||||
|
aT5MVQ/+O2twsUA9kCSVelVs80Ys/vGrw278h5CLpYoaYsxDhjQWtAqFhiYuYsSf
|
||||||
|
fqWeyQJQs55YUcfCJGss4FPqWyxjNGoYVqv+GwJZIv74/kmjE31an+L0k5qEXiz5
|
||||||
|
bBzwFKUobGe2UAsNWuCTgoDh7M/Xsdz+MPq9E/7gfvRwEEjKX++scEVnGV3Qy7NS
|
||||||
|
oEOzdZpynksmF3OTnzky53XGVoW9Tk6As5r3pYy7F3KHcu/QmWKOIbU6t1+9XN08
|
||||||
|
8QvGKdnEwv6Isd7zrg2BP6gdQfwLmP9FJbsrZ5c9XP3zNz2DsEG8H459IucCOmUR
|
||||||
|
T3kkBonxSxlMdKRC23Nxmxb7wrzL4sGw8PC2a6iAFH+4glTc+jzvftKHzIPBQeFg
|
||||||
|
HC4cSb1j3EEVyv+RnQNEBShY+4ghT0Zofc5k3rSPUYpW9xn0bzFNq1sP7/7nTaYG
|
||||||
|
TNDBJrJEQmq4GarKWZ2y11I4mw7l/PBvfQpgxm6ABHfUdl0yPy89SOiBfMw+8b2Y
|
||||||
|
mk5AXuO3qdAYqVTXUodWn79Rtno5Zrj7UXMQjoK9LcP1lr1JVvC8I/gDktdBjgqW
|
||||||
|
60KkX0tNfIw0TzkcK/ogewBKKKRJJ1VZZOGx+tw/7ShBUpyAEu1boosx6bT88GVN
|
||||||
|
k1wLp1FVnouFdIBLih2/ROJjTYTWUUWmvQrHYufis0AAb9Mmtjg=
|
||||||
|
=hEZa
|
||||||
|
-----END PGP SIGNATURE-----
|
3
linux-6.14.tar.xz
Normal file
3
linux-6.14.tar.xz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:a294b683e7b161bb0517bb32ec7ed1d2ea7603dfbabad135170ed12d00c47670
|
||||||
|
size 149408504
|
9
mkspec
9
mkspec
@@ -40,12 +40,19 @@ my ($srcversion, $variant, $obs_build_variant) =
|
|||||||
$obs_build_variant = ($obs_build_variant ? $variant : "" );
|
$obs_build_variant = ($obs_build_variant ? $variant : "" );
|
||||||
my $compress_modules = 'none';
|
my $compress_modules = 'none';
|
||||||
my $compress_vmlinux = 'gz';
|
my $compress_vmlinux = 'gz';
|
||||||
|
my $gcc_package = 'gcc';
|
||||||
|
my $gcc_compiler = 'gcc';
|
||||||
if (defined($vars{'COMPRESS_MODULES'})) {
|
if (defined($vars{'COMPRESS_MODULES'})) {
|
||||||
$compress_modules = $vars{'COMPRESS_MODULES'};
|
$compress_modules = $vars{'COMPRESS_MODULES'};
|
||||||
}
|
}
|
||||||
if (defined($vars{'COMPRESS_VMLINUX'})) {
|
if (defined($vars{'COMPRESS_VMLINUX'})) {
|
||||||
$compress_vmlinux = $vars{'COMPRESS_VMLINUX'};
|
$compress_vmlinux = $vars{'COMPRESS_VMLINUX'};
|
||||||
}
|
}
|
||||||
|
if (defined($vars{'GCC_VERSION'})) {
|
||||||
|
my $gcc_version = $vars{'GCC_VERSION'};
|
||||||
|
$gcc_package = 'gcc' . $gcc_version;
|
||||||
|
$gcc_compiler = 'gcc-' . $gcc_version;
|
||||||
|
}
|
||||||
sub detect_false {
|
sub detect_false {
|
||||||
my $arg = $_[0];
|
my $arg = $_[0];
|
||||||
return "" if not $arg;
|
return "" if not $arg;
|
||||||
@@ -142,6 +149,8 @@ my %macros = (
|
|||||||
COMPRESS_MODULES => $compress_modules,
|
COMPRESS_MODULES => $compress_modules,
|
||||||
COMPRESS_VMLINUX => $compress_vmlinux,
|
COMPRESS_VMLINUX => $compress_vmlinux,
|
||||||
GENERATE_COMPILE_COMMANDS => $generate_compile_commands,
|
GENERATE_COMPILE_COMMANDS => $generate_compile_commands,
|
||||||
|
GCC_PACKAGE => $gcc_package,
|
||||||
|
GCC_COMPILER => $gcc_compiler,
|
||||||
);
|
);
|
||||||
|
|
||||||
# binary spec files
|
# binary spec files
|
||||||
|
@@ -24,7 +24,6 @@ my @armv7l_package_list = (
|
|||||||
['dtb-imx6', 'nxp/imx/imx6*.dts', "Freescale i.MX6 based systems"],
|
['dtb-imx6', 'nxp/imx/imx6*.dts', "Freescale i.MX6 based systems"],
|
||||||
['dtb-imx7', 'nxp/imx/imx7*.dts', "Freescale i.MX7 based systems"],
|
['dtb-imx7', 'nxp/imx/imx7*.dts', "Freescale i.MX7 based systems"],
|
||||||
['dtb-keystone', 'ti/keystone/keystone-*.dts', "TI Keystone 2 based systems"],
|
['dtb-keystone', 'ti/keystone/keystone-*.dts', "TI Keystone 2 based systems"],
|
||||||
['dtb-meson6', 'amlogic/meson6-*.dts', "Amlogic Meson 6 based systems"],
|
|
||||||
['dtb-meson8', 'amlogic/meson8-*.dts', "Amlogic Meson 8 based systems"],
|
['dtb-meson8', 'amlogic/meson8-*.dts', "Amlogic Meson 8 based systems"],
|
||||||
['dtb-meson8b', 'amlogic/meson8b-*.dts', "Amlogic Meson 8b based systems"],
|
['dtb-meson8b', 'amlogic/meson8b-*.dts', "Amlogic Meson 8b based systems"],
|
||||||
['dtb-mt76', 'mediatek/mt76*.dts', "MediaTek mt76 based systems"],
|
['dtb-mt76', 'mediatek/mt76*.dts', "MediaTek mt76 based systems"],
|
||||||
|
@@ -78,6 +78,19 @@ The kernel for arm64 and x86_64 architectures that supports CONFIG_PREEMPT. Its
|
|||||||
main purpose is to serve workloads with a higher demand on smaller latencies
|
main purpose is to serve workloads with a higher demand on smaller latencies
|
||||||
than the default kernel in average.
|
than the default kernel in average.
|
||||||
|
|
||||||
|
=== kernel-rt ===
|
||||||
|
Kernel with PREEMPT_RT (realtime) support
|
||||||
|
|
||||||
|
The kernel for arm64 and x86_64 architectures that supports CONFIG_PREEMPT_RT. Its
|
||||||
|
main purpose is to serve workloads with strict latency requirements with more
|
||||||
|
deterministic worst case behaviour than the default kernel.
|
||||||
|
|
||||||
|
=== kernel-rt_debug ===
|
||||||
|
A Debug Version of the PREEMPT_RT Kernel
|
||||||
|
|
||||||
|
This kernel has several debug facilities enabled that hurt performance.
|
||||||
|
Only use this kernel when investigating problems.
|
||||||
|
|
||||||
=== kernel-syzkaller ===
|
=== kernel-syzkaller ===
|
||||||
Kernel used for fuzzing by syzkaller
|
Kernel used for fuzzing by syzkaller
|
||||||
|
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:27e4c0fc8297a513046b0d1078a960e9d978dbc12cd21ecf9cf7af74f63fe640
|
oid sha256:d48cb07dec0385d3dd28bdae38513f357239d936f942743f3950af3f225959a8
|
||||||
size 1382781
|
size 1525861
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:26cbaa296e21a490af5339b646b1d2d9934d889527d089b43ccb3f2e7d3e6704
|
oid sha256:b0ddc67e8c27919c5c315dad0e46d8fbf53cb713bd9380c866ce21895cc9b554
|
||||||
size 3639
|
size 4144
|
||||||
|
@@ -1,3 +1,3 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
version https://git-lfs.github.com/spec/v1
|
||||||
oid sha256:625ecf57571680e3817d118381ef514e553d74bd6b8d2c028ec8a3610f71deab
|
oid sha256:121f0ad5837925f24baf9e266720a453750040894dc79958de8a202fe8813686
|
||||||
size 43247
|
size 134531
|
||||||
|
@@ -1,6 +1,9 @@
|
|||||||
# This file contains regular expressions that define which projects
|
# This file contains regular expressions that define which projects
|
||||||
# are considered part of an official release channel.
|
# are considered part of an official release channel.
|
||||||
# This will mark the kernel as released when it's built.
|
# This will mark the kernel as released when it's built.
|
||||||
|
SUSE:SLFO:[0-9].*
|
||||||
|
SUSE:ALP:Source:Standard:Core:1.0:Build
|
||||||
|
SUSE:SLFO:Kernel:1.0:Build
|
||||||
SUSE:SLE-.*
|
SUSE:SLE-.*
|
||||||
SUSE:Maintenance:.*
|
SUSE:Maintenance:.*
|
||||||
openSUSE:[0-9].*:Update
|
openSUSE:[0-9].*:Update
|
||||||
|
3882
series.conf
3882
series.conf
File diff suppressed because it is too large
Load Diff
@@ -1,3 +1,3 @@
|
|||||||
2024-09-08 13:43:05 +0000
|
2025-05-13 09:56:22 +0000
|
||||||
GIT Revision: 5af77882e5891561a6c508a4a352a99c61465403
|
GIT Revision: ad69173661e912fc54ea9589c400528b76aa8aca
|
||||||
GIT Branch: stable
|
GIT Branch: stable
|
||||||
|
@@ -167,6 +167,7 @@ if $opt_extra && test -f "$opt_builddir/Module.optional"; then
|
|||||||
esac
|
esac
|
||||||
path=${path%.ko}
|
path=${path%.ko}
|
||||||
mod=${path##*/}
|
mod=${path##*/}
|
||||||
|
mod=$(echo "$mod" | sed 'y/-/_/')
|
||||||
modmarks["$mod"]="$mark"
|
modmarks["$mod"]="$mark"
|
||||||
# paths with wildcards need to be verified sequentially, so we keep
|
# paths with wildcards need to be verified sequentially, so we keep
|
||||||
# the paths in the array wcpaths and each mark in wcmarks[]
|
# the paths in the array wcpaths and each mark in wcmarks[]
|
||||||
@@ -185,6 +186,7 @@ if $opt_extra && test -f "$opt_builddir/Module.optional"; then
|
|||||||
esac
|
esac
|
||||||
path=${path%.ko}
|
path=${path%.ko}
|
||||||
mod=${path##*/}
|
mod=${path##*/}
|
||||||
|
mod=$(echo "$mod" | sed 'y/-/_/')
|
||||||
x=${modmarks["$mod"]}
|
x=${modmarks["$mod"]}
|
||||||
if [ -n "$x" ]; then
|
if [ -n "$x" ]; then
|
||||||
test x"$x" = x"-" && echo "$xpath"
|
test x"$x" = x"-" && echo "$xpath"
|
||||||
@@ -192,6 +194,7 @@ if $opt_extra && test -f "$opt_builddir/Module.optional"; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# unmatched modules must be handled via wildcard
|
# unmatched modules must be handled via wildcard
|
||||||
|
path=${path#/usr}
|
||||||
path=${path#/lib/modules/*/kernel/}
|
path=${path#/lib/modules/*/kernel/}
|
||||||
for m in "${wcpaths[@]}"; do
|
for m in "${wcpaths[@]}"; do
|
||||||
case "$path" in
|
case "$path" in
|
||||||
|
Reference in New Issue
Block a user