Compare commits

...

No commits in common. "devel" and "devel" have entirely different histories.
devel ... devel

38 changed files with 12401 additions and 124678 deletions

View File

@ -187,17 +187,8 @@ will report one of the following:
* third-party support: "supported: external", * third-party support: "supported: external",
* unsupported modules: no supported tag. * unsupported modules: no supported tag.
At runtime, the support status of a module can be obtained by reading At runtime, the setting of the "unsupported" kernel command line parameter and
`/sys/module/$MODULE/supported`. `/proc/sys/kernel/unsupported` determines whether unsupported modules can be
Note that this information is available only if the module was not built
directly into the kernel. Builtin modules are implicitly supported.
The aggregated support status for the entire kernel can be inspected by reading
`/sys/kernel/supported`. The value is also included in Oopses.
The setting of the "unsupported" kernel command line parameter and
`/proc/sys/kernel/unsupported` controls whether unsupported modules can be
loaded or not, and whether or not loading an unsupported module causes a warning loaded or not, and whether or not loading an unsupported module causes a warning
in the system log: in the system log:
@ -205,9 +196,9 @@ in the system log:
* 1 = warn when loading unsupported modules, * 1 = warn when loading unsupported modules,
* 2 = don't warn. * 2 = don't warn.
Irrespective of this setting, loading an unsupported module sets a kernel taint Irrespective of this setting, loading an externally supported or unsupported
flag. The taint status of the kernel can be inspected in module both set a kernel taint flag. The taint flags are included in Oopses. The
`/proc/sys/kernel/tainted`. The taint flags are also included in Oopses. taint status of the kernel can be inspected in `/proc/sys/kernel/tainted`.
Relevant bits have the following meaning: Relevant bits have the following meaning:
| Bit | Log | Number | Reason that got the kernel tainted | | Bit | Log | Number | Reason that got the kernel tainted |
@ -218,9 +209,7 @@ Relevant bits have the following meaning:
| 16 | ␣/X | 65536 | module with third-party support was loaded | | 16 | ␣/X | 65536 | module with third-party support was loaded |
| 31 | ␣/N | 2147483648 | unsupported module was loaded | | 31 | ␣/N | 2147483648 | unsupported module was loaded |
Bits 16 and 31 are specific to the SUSE kernels. Since SLE15-SP6, loading an Bits 16 and 31 are specific to the SUSE kernels.
externally supported module does not taint the kernel, but bit 16 (X) is still
tracked per module and can be read in `/sys/module/$MODULE/taint`.
Out-of-tree modules do not have the supported flag set by default; that Out-of-tree modules do not have the supported flag set by default; that
is, they are marked as unsupported. For building externally supported is, they are marked as unsupported. For building externally supported

View File

@ -5,7 +5,6 @@
# #
# please keep them sorted alphabetically # please keep them sorted alphabetically
declare -a IGNORED_CONFIGS_RE=( declare -a IGNORED_CONFIGS_RE=(
'ARCH_USING_PATCHABLE_FUNCTION_ENTRY'
'AS_HAS_[A-Z0-9_]*' 'AS_HAS_[A-Z0-9_]*'
'AS_VERSION' 'AS_VERSION'
'AS_WRUSS' # x86_32 'AS_WRUSS' # x86_32
@ -16,19 +15,16 @@ declare -a IGNORED_CONFIGS_RE=(
'CC_VERSION_TEXT' 'CC_VERSION_TEXT'
'DYNAMIC_SIGFRAME' 'DYNAMIC_SIGFRAME'
'FTRACE_MCOUNT_USE_[A-Z_]*' 'FTRACE_MCOUNT_USE_[A-Z_]*'
'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_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_]*'

View File

@ -12,7 +12,7 @@
- -syms x86_64/debug - -syms x86_64/debug
- x86_64/syzkaller - x86_64/syzkaller
- x86_64/vanilla - x86_64/vanilla
- -syms x86_64/kvmsmall - -syms x86_64/kvmsmall
+x86_64 x86_64/longterm +x86_64 x86_64/longterm
# ARM architectures # ARM architectures

View File

@ -1,5 +1,5 @@
# The version of the main tarball to use # The version of the main tarball to use
SRCVERSION=6.12 SRCVERSION=6.6
# variant of the kernel-source package, either empty or "-rt" # variant of the kernel-source package, either empty or "-rt"
VARIANT=-longterm VARIANT=-longterm
# enable kernel module compression # enable kernel module compression
@ -21,5 +21,3 @@ BUGZILLA_PRODUCT="openSUSE Tumbleweed"
BUILD_HTML=Yes BUILD_HTML=Yes
# build documentation in PDF format # build documentation in PDF format
BUILD_PDF=No BUILD_PDF=No
# Generate compile_commands.json
GENERATE_COMPILE_COMMANDS=Yes

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:599c0b5fa1f17e8be50a5b3a48248004718d8863169b1d1ad34b74069e78cdb7 oid sha256:4f7f1aead1b6149539f59519cfa903906a5bb8e29279fe996160c4684d26ac2f
size 107004 size 103312

View File

@ -35,19 +35,16 @@ Summary: Device Tree files for $MACHINES
License: GPL-2.0-only License: GPL-2.0-only
Group: System/Boot Group: System/Boot
URL: https://www.kernel.org/ URL: https://www.kernel.org/
BuildRequires: cpp
BuildRequires: dtc >= 1.4.3
BuildRequires: xz
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
$ARCH_RESTRICTIONS $ARCH_RESTRICTIONS
%else %else
ExclusiveArch: do_not_build ExclusiveArch: do_not_build
%endif %endif
BuildRequires: cpp
%define dtbdir /boot/dtb-%kernelrelease BuildRequires: dtc >= 1.4.3
BuildRequires: xz
@SOURCES@
Requires: kernel = %version Requires: kernel = %version
@SOURCES@
%description %description
Device Tree files for $MACHINES. Device Tree files for $MACHINES.
@ -60,6 +57,7 @@ $SUBPKG_DESC
cd linux-%srcversion cd linux-%srcversion
%_sourcedir/apply-patches %_sourcedir/series.conf .. %_sourcedir/apply-patches %_sourcedir/series.conf ..
%build %build
source=linux-%srcversion source=linux-%srcversion
cp $source/COPYING . cp $source/COPYING .
@ -77,7 +75,10 @@ for dts in $ALL_SUPPORTED_DTB; do
dtc $DTC_FLAGS -I dts -O dtb -i ./$(dirname $target) -o $PPDIR/$target.dtb $PPDIR/$target.dts dtc $DTC_FLAGS -I dts -O dtb -i ./$(dirname $target) -o $PPDIR/$target.dtb $PPDIR/$target.dts
done done
%define dtbdir /boot/dtb-%kernelrelease
%install %install
cd pp cd pp
for dts in $ALL_SUPPORTED_DTB; do for dts in $ALL_SUPPORTED_DTB; do
target=${dts%*.dts} target=${dts%*.dts}
@ -101,4 +102,6 @@ $SUBPKG_CASE
done done
cd - cd -
$SUBPKG_POST
$SUBPKG_FILES
%changelog %changelog

View File

@ -1,7 +1,7 @@
#!/usr/bin/perl #!/usr/bin/perl
use File::Spec; use File::Spec;
use Getopt::Long qw(:config no_ignore_case); use Getopt::Long;
use strict; use strict;
&main(); &main();
@ -19,12 +19,6 @@ sub main
&output($dev, $ndev, $dev_output, $ndev_output); &output($dev, $ndev, $dev_output, $ndev_output);
} }
sub rpm_quote_filename
{
# technically should also quote % -> %% " -> \" \ -> \\
return map { "\"$_\"" } @_;
}
sub scan sub scan
{ {
# Normalize file path, mainly to strip away the ending forward slash, # Normalize file path, mainly to strip away the ending forward slash,
@ -59,14 +53,8 @@ sub scan
$is_devel ? push(@dev, $abs_path) : push(@ndev, $abs_path); $is_devel ? push(@dev, $abs_path) : push(@ndev, $abs_path);
} }
my @dev_dirs = calc_dirs($abs_loc, \@dev); push(@dev, &calc_dirs($abs_loc, \@dev));
my @ndev_dirs = calc_dirs($abs_loc, \@ndev); push(@ndev, &calc_dirs($abs_loc, \@ndev));
@dev = rpm_quote_filename(@dev);
@ndev = rpm_quote_filename(@ndev);
@dev_dirs = map { "\%dir $_" } rpm_quote_filename(@dev_dirs);
@ndev_dirs = map { "\%dir $_" } rpm_quote_filename(@ndev_dirs);
push(@dev, @dev_dirs);
push(@ndev, @ndev_dirs);
return (\@dev, \@ndev); return (\@dev, \@ndev);
} }
@ -87,7 +75,7 @@ sub calc_dirs
# This loop also makes sure that $base itself is included. # This loop also makes sure that $base itself is included.
} }
return keys %dirs; return map { "\%dir $_" } keys %dirs;
} }
sub output sub output

4
guards
View File

@ -26,7 +26,7 @@
# #
use FileHandle; use FileHandle;
use Getopt::Long qw(:config no_ignore_case); use Getopt::Long;
use strict; use strict;
# Prototypes # Prototypes
@ -205,7 +205,7 @@ if ($check) {
# This is not an error if the entries are mutually exclusive... # This is not an error if the entries are mutually exclusive...
} }
} }
exit ($problems ? 1 : 0); exit $problems ? 1 : 0;
} elsif ($list) { } elsif ($list) {
parse($fh, sub { parse($fh, sub {

View File

@ -2,7 +2,7 @@
use strict; use strict;
use warnings; use warnings;
use Getopt::Long qw(:config no_ignore_case); use Getopt::Long;
use Data::Dumper; use Data::Dumper;
# ( { sym => regexp, mod => regexp, fail => 0/1 }, ... ) # ( { sym => regexp, mod => regexp, fail => 0/1 }, ... )

File diff suppressed because it is too large Load Diff

View File

@ -28,16 +28,15 @@
%(chmod +x %_sourcedir/{@SCRIPTS@}) %(chmod +x %_sourcedir/{@SCRIPTS@})
Name: kernel-docs@VARIANT@ Name: kernel-docs@VARIANT@
Summary: Kernel Documentation
License: GPL-2.0-only
Group: Documentation/Man
Version: @RPMVERSION@ Version: @RPMVERSION@
%if 0%{?is_kotd} %if 0%{?is_kotd}
Release: <RELEASE>.g@COMMIT@ Release: <RELEASE>.g@COMMIT@
%else %else
Release: @RELEASE@ Release: @RELEASE@
%endif %endif
Summary: Kernel Documentation
License: GPL-2.0-only
Group: Documentation/Man
URL: https://www.kernel.org/
%if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300 %if 0%{?suse_version} > 1500 || 0%{?sle_version} > 150300
BuildRequires: bash-sh BuildRequires: bash-sh
%endif %endif
@ -84,29 +83,21 @@ BuildRequires: texlive-xetex
BuildRequires: texlive-zapfding BuildRequires: texlive-zapfding
%endif %endif
%endif %endif
URL: https://www.kernel.org/
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
BuildArch: noarch BuildArch: noarch
%else %else
ExclusiveArch: do_not_build ExclusiveArch: do_not_build
%endif %endif
@SOURCES@ @SOURCES@
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
%description %description
A few basic documents from the current kernel sources. A few basic documents from the current kernel sources.
%source_timestamp %source_timestamp
%files
%if 0%{?suse_version} && 0%{?suse_version} < 1500
%doc COPYING
%else
%license COPYING
%endif
%doc CREDITS MAINTAINERS README
%doc old_changelog.txt
%if %build_pdf %if %build_pdf
%package pdf %package pdf
Summary: Kernel Documentation (PDF) Summary: Kernel Documentation (PDF)
@ -116,11 +107,6 @@ Group: Documentation/Other
These are PDF documents built from the current kernel sources. These are PDF documents built from the current kernel sources.
%source_timestamp %source_timestamp
%files pdf
%dir %{_datadir}/doc/kernel
%docdir %{_datadir}/doc/kernel/pdf
%{_datadir}/doc/kernel/pdf
%endif %endif
%if %build_html %if %build_html
@ -132,11 +118,6 @@ Group: Documentation/HTML
These are HTML documents built from the current kernel sources. These are HTML documents built from the current kernel sources.
%source_timestamp %source_timestamp
%files html
%dir %{_datadir}/doc/kernel
%docdir %{_datadir}/doc/kernel/html
%{_datadir}/doc/kernel/html
%endif %endif
%prep %prep
@ -180,4 +161,27 @@ for i in pdf/Documentation/output/latex/*.pdf; do
done done
%endif %endif
%files
%if 0%{?suse_version} && 0%{?suse_version} < 1500
%doc COPYING
%else
%license COPYING
%endif
%doc CREDITS MAINTAINERS README
%doc old_changelog.txt
%if %build_pdf
%files pdf
%dir %{_datadir}/doc/kernel
%docdir %{_datadir}/doc/kernel/pdf
%{_datadir}/doc/kernel/pdf
%endif
%if %build_html
%files html
%dir %{_datadir}/doc/kernel
%docdir %{_datadir}/doc/kernel/html
%{_datadir}/doc/kernel/html
%endif
%changelog %changelog

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -73,27 +73,27 @@ END { exit(! good) }
%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD}
%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-pre --name "%{-n*}-kmp-%1" \ %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-pre --name "%{-n*}-kmp-%1" \
--version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \
--flavor "%1" --usrmerged "%{usrmerged}" "$@" --flavor "%1" --usrmerged "0%{?usrmerged}" "$@"
%post -n %{-n*}-kmp-%1 %post -n %{-n*}-kmp-%1
%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD}
%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-post --name "%{-n*}-kmp-%1" \ %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-post --name "%{-n*}-kmp-%1" \
--version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \
--flavor "%1" --usrmerged "%{usrmerged}" "$@" --flavor "%1" --usrmerged "0%{?usrmerged}" "$@"
%preun -n %{-n*}-kmp-%1 %preun -n %{-n*}-kmp-%1
%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD}
%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-preun --name "%{-n*}-kmp-%1" \ %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-preun --name "%{-n*}-kmp-%1" \
--version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \
--flavor "%1" --usrmerged "%{usrmerged}" "$@" --flavor "%1" --usrmerged "0%{?usrmerged}" "$@"
%postun -n %{-n*}-kmp-%1 %postun -n %{-n*}-kmp-%1
%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD}
%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-postun --name "%{-n*}-kmp-%1" \ %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-postun --name "%{-n*}-kmp-%1" \
--version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \
--flavor "%1" --usrmerged "%{usrmerged}" "$@" --flavor "%1" --usrmerged "0%{?usrmerged}" "$@"
%posttrans -n %{-n*}-kmp-%1 %posttrans -n %{-n*}-kmp-%1
%{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD} %{-b:KMP_NEEDS_MKINITRD=1; export KMP_NEEDS_MKINITRD}
%run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-posttrans --name "%{-n*}-kmp-%1" \ %run_if_exists /usr/lib/module-init-tools/kernel-scriptlets/kmp-posttrans --name "%{-n*}-kmp-%1" \
--version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \ --version "%_this_kmp_version" --release "%{-r*}" --kernelrelease "%2" \
--flavor "%1" --usrmerged "%{usrmerged}" "$@" --flavor "%1" --usrmerged "0%{?usrmerged}" "$@"
%files -n %{-n*}-kmp-%1 %files -n %{-n*}-kmp-%1
%{-f:%{expand:%(cd %_sourcedir; cat %{-f*})}} %{-f:%{expand:%(cd %_sourcedir; cat %{-f*})}}
%{!-f:%defattr (-,root,root)} %{!-f:%defattr (-,root,root)}

View File

@ -24,49 +24,51 @@
%include %_sourcedir/kernel-spec-macros %include %_sourcedir/kernel-spec-macros
Name: kernel-obs-build
BuildRequires: coreutils
BuildRequires: device-mapper
BuildRequires: util-linux
%if 0%{?suse_version} %if 0%{?suse_version}
%if "@OBS_BUILD_VARIANT@" %if "@OBS_BUILD_VARIANT@"
%global kernel_flavor @OBS_BUILD_VARIANT@ %define kernel_flavor @OBS_BUILD_VARIANT@
%else %else
%ifarch %ix86 %ifarch %ix86
%global kernel_flavor -pae %define kernel_flavor -pae
%else %else
%ifarch armv7l armv7hl %ifarch armv7l armv7hl
%global kernel_flavor -lpae %define kernel_flavor -lpae
%else %else
%global kernel_flavor -default %define kernel_flavor -default
%endif %endif
%endif %endif
%endif %endif
%global kernel_package kernel%kernel_flavor-srchash-@COMMIT_FULL@
%endif %endif
BuildRequires: kernel%kernel_flavor-srchash-@COMMIT_FULL@
%if 0%{?rhel_version} %if 0%{?rhel_version}
%global kernel_package kernel BuildRequires: kernel
%define kernel_flavor ""
%endif %endif
Name: kernel-obs-build %if ! 0%{?is_kotd} || %{?is_kotd_qa}%{!?is_kotd_qa:0}
ExclusiveArch: @ARCHS@
%else
ExclusiveArch: do_not_build
%endif
BuildRequires: dracut
Summary: package kernel and initrd for OBS VM builds
License: GPL-2.0-only
Group: SLES
Version: @RPMVERSION@ Version: @RPMVERSION@
%if 0%{?is_kotd} %if 0%{?is_kotd}
Release: <RELEASE>.g@COMMIT@ Release: <RELEASE>.g@COMMIT@
%else %else
Release: @RELEASE@ Release: @RELEASE@
%endif %endif
Summary: package kernel and initrd for OBS VM builds
License: GPL-2.0-only
Group: SLES
BuildRequires: coreutils
BuildRequires: device-mapper
BuildRequires: dracut
BuildRequires: %kernel_package
BuildRequires: util-linux
%if 0%{?suse_version} > 1550 || 0%{?sle_version} > 150200 %if 0%{?suse_version} > 1550 || 0%{?sle_version} > 150200
BuildRequires: zstd BuildRequires: zstd
%endif %endif
%if ! 0%{?is_kotd} || %{?is_kotd_qa}%{!?is_kotd_qa:0}
ExclusiveArch: @ARCHS@
%else
ExclusiveArch: do_not_build
%endif
%description %description
This package is repackaging already compiled kernels to make them usable This package is repackaging already compiled kernels to make them usable
@ -74,13 +76,6 @@ inside of Open Build Service (OBS) VM builds. An initrd with some basic
kernel modules is generated as well, but further kernel modules can be kernel modules is generated as well, but further kernel modules can be
loaded during build when installing the kernel package. loaded during build when installing the kernel package.
%files
/.build.cmdline.*
/.build.console.*
/.build.hostarch.*
/.build.initrd.*
/.build.kernel.*
%prep %prep
%build %build
@ -123,12 +118,7 @@ echo 127.0.0.1 localhost > /etc/hosts # omit build-machine host name (boo#108490
# a longer list to have them also available for qemu cross builds where x86_64 kernel runs in eg. arm env. # a longer list to have them also available for qemu cross builds where x86_64 kernel runs in eg. arm env.
# this list of modules where available on build workers of build.opensuse.org, so we stay compatible. # this list of modules where available on build workers of build.opensuse.org, so we stay compatible.
export KERNEL_MODULES=" export KERNEL_MODULES="loop dm-crypt essiv dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs btrfs 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"
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
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
iso9660"
# manually load all modules to make sure they're available # manually load all modules to make sure they're available
for i in $KERNEL_MODULES; do for i in $KERNEL_MODULES; do
@ -183,4 +173,11 @@ fi
#see obs-build commit e47399d738e51 #see obs-build commit e47399d738e51
uname -m > %{buildroot}/.build.hostarch.kvm uname -m > %{buildroot}/.build.hostarch.kvm
%files
/.build.cmdline.*
/.build.console.*
/.build.hostarch.*
/.build.initrd.*
/.build.kernel.*
%changelog %changelog

View File

@ -23,15 +23,6 @@
%include %_sourcedir/kernel-spec-macros %include %_sourcedir/kernel-spec-macros
Name: kernel-obs-qa Name: kernel-obs-qa
Version: @RPMVERSION@
%if 0%{?is_kotd}
Release: <RELEASE>.g@COMMIT@
%else
Release: @RELEASE@
%endif
Summary: Basic QA tests for the kernel
License: GPL-2.0-only
Group: SLES
BuildRequires: kernel-default BuildRequires: kernel-default
# kernel-obs-build must be also configured as VMinstall, but is required # kernel-obs-build must be also configured as VMinstall, but is required
# here as well to avoid that qa and build package build parallel # here as well to avoid that qa and build package build parallel
@ -42,14 +33,20 @@ ExclusiveArch: @ARCHS@
%else %else
ExclusiveArch: do_not_build ExclusiveArch: do_not_build
%endif %endif
Summary: Basic QA tests for the kernel
License: GPL-2.0-only
Group: SLES
Version: @RPMVERSION@
%if 0%{?is_kotd}
Release: <RELEASE>.g@COMMIT@
%else
Release: @RELEASE@
%endif
%description %description
This package is using the kernel compiled within Open Build Service(OBS) This package is using the kernel compiled within Open Build Service(OBS)
projects and runs basic tests. projects and runs basic tests.
%files
/usr/share/%name
%prep %prep
%build %build
@ -73,4 +70,7 @@ fi
mkdir -p %{buildroot}/usr/share/%name mkdir -p %{buildroot}/usr/share/%name
touch %{buildroot}/usr/share/%name/logfile touch %{buildroot}/usr/share/%name/logfile
%files
/usr/share/%name
%changelog %changelog

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# #
# spec file for package kernel-source-longterm # spec file for package kernel-source-longterm
# #
# Copyright (c) 2025 SUSE LLC # Copyright (c) 2024 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,24 @@
# #
%define srcversion 6.12 %define srcversion 6.6
%define patchversion 6.12.20 %define patchversion 6.6.50
%define git_commit 5a14607a2385bc3c0e80ed83d05e02367bdcd4b7 %define git_commit e2ac9495079bda452d5e19af61c25c52dd6f89f7
%define variant -longterm%{nil} %define variant -longterm%{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,splitflist,mergedep,moddep,modflist,kernel-subpackage-build}) %define src_install_dir usr/src/linux-%kernelrelease%variant
# if undefined use legacy location of before SLE15
%if %{undefined _rpmmacrodir}
%define _rpmmacrodir /etc/rpm
%endif
Name: kernel-source-longterm Name: kernel-source-longterm
Version: 6.12.20 Version: 6.6.50
%if 0%{?is_kotd} %if 0%{?is_kotd}
Release: <RELEASE>.g5a14607 Release: <RELEASE>.ge2ac949
%else %else
Release: 0 Release: 0
%endif %endif
@ -43,20 +48,7 @@ BuildRequires: bash-sh
BuildRequires: coreutils BuildRequires: coreutils
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: sed BuildRequires: sed
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} Requires(post): coreutils sed
BuildArch: noarch
%else
ExclusiveArch: do_not_build
%endif
Prefix: /usr/src
%define src_install_dir usr/src/linux-%kernelrelease%variant
# if undefined use legacy location of before SLE15
%if %{undefined _rpmmacrodir}
%define _rpmmacrodir /etc/rpm
%endif
Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz Source0: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.xz
%if "https://www.kernel.org/pub/linux/kernel/v6.x/" != "" %if "https://www.kernel.org/pub/linux/kernel/v6.x/" != ""
Source1: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.sign Source1: https://www.kernel.org/pub/linux/kernel/v6.x/linux-%srcversion.tar.sign
@ -105,6 +97,7 @@ 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
@ -129,7 +122,12 @@ Source113: patches.kabi.tar.bz2
Source114: patches.drm.tar.bz2 Source114: patches.drm.tar.bz2
Source120: kabi.tar.bz2 Source120: kabi.tar.bz2
Source121: sysctl.tar.bz2 Source121: sysctl.tar.bz2
Requires(post): coreutils sed %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
BuildArch: noarch
%else
ExclusiveArch: do_not_build
%endif
Prefix: /usr/src
# Source is only complete with devel files. # Source is only complete with devel files.
Requires: kernel-devel%variant = %version-%source_rel Requires: kernel-devel%variant = %version-%source_rel
Provides: %name = %version-%source_rel Provides: %name = %version-%source_rel
@ -152,6 +150,8 @@ Recommends: kernel-install-tools
%endif %endif
%obsolete_rebuilds %name %obsolete_rebuilds %name
%(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})
# Force bzip2 instead of lzma compression to # Force bzip2 instead of lzma compression to
# 1) allow install on older dist versions, and # 1) allow install on older dist versions, and
# 2) decrease build times (bsc#962356 boo#1175882) # 2) decrease build times (bsc#962356 boo#1175882)
@ -166,15 +166,8 @@ Linux kernel sources with many fixes and improvements.
%source_timestamp %source_timestamp
%post
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -f nondevel.files
%package -n kernel-devel%variant %package -n kernel-devel%variant
%obsolete_rebuilds kernel-devel%variant
Summary: Development files needed for building kernel modules Summary: Development files needed for building kernel modules
Group: Development/Sources Group: Development/Sources
AutoReqProv: off AutoReqProv: off
@ -182,24 +175,13 @@ Provides: kernel-devel%variant = %version-%source_rel
Provides: multiversion(kernel) Provides: multiversion(kernel)
Requires: kernel-macros Requires: kernel-macros
Requires(post): coreutils Requires(post): coreutils
%obsolete_rebuilds kernel-devel%variant
%description -n kernel-devel%variant %description -n kernel-devel%variant
Kernel-level headers and Makefiles required for development of Kernel-level headers and Makefiles required for development of
external kernel modules. external kernel modules.
%source_timestamp %source_timestamp
%post -n kernel-devel%variant
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -n kernel-devel%variant -f devel.files
%ghost /usr/src/linux%variant
%doc /usr/share/doc/packages/*
# Note: The kernel-macros package intentionally does not provide # Note: The kernel-macros package intentionally does not provide
# multiversion(kernel) nor is its name decorated with the variant (-rt) # multiversion(kernel) nor is its name decorated with the variant (-rt)
%package -n kernel-macros %package -n kernel-macros
@ -210,17 +192,8 @@ Provides: kernel-subpackage-macros
%description -n kernel-macros %description -n kernel-macros
This package provides the rpm macros and templates for Kernel Module Packages This package provides the rpm macros and templates for Kernel Module Packages
%source_timestamp %source_timestamp
%if "%variant" == ""
%files -n kernel-macros
%{_rpmmacrodir}/macros.kernel-source
/usr/lib/rpm/kernel-*-subpackage
%dir /usr/lib/rpm/kernel
/usr/lib/rpm/kernel/*
%endif
%package vanilla %package vanilla
%obsolete_rebuilds %name-vanilla %obsolete_rebuilds %name-vanilla
Summary: Vanilla Linux kernel sources with minor build fixes Summary: Vanilla Linux kernel sources with minor build fixes
@ -240,11 +213,6 @@ Vanilla Linux kernel sources with minor build fixes.
%source_timestamp %source_timestamp
%if %do_vanilla
%files vanilla
/usr/src/linux-%kernelrelease-vanilla
%endif
%prep %prep
echo "Symbol(s): %symbols" echo "Symbol(s): %symbols"
@ -325,6 +293,37 @@ done
# the future and be thus lower than the timestamps of files built from the # the future and be thus lower than the timestamps of files built from the
# source (bnc#669669). # source (bnc#669669).
ts="$(head -n1 %_sourcedir/source-timestamp)" ts="$(head -n1 %_sourcedir/source-timestamp)"
find %buildroot/usr/src/linux* ! -type l -print0 | xargs -0 touch -d "$ts" find %buildroot/usr/src/linux* ! -type l | xargs touch -d "$ts"
%post
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%post -n kernel-devel%variant
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -f nondevel.files
%files -n kernel-devel%variant -f devel.files
%ghost /usr/src/linux%variant
%doc /usr/share/doc/packages/*
%if "%variant" == ""
%files -n kernel-macros
%{_rpmmacrodir}/macros.kernel-source
/usr/lib/rpm/kernel-*-subpackage
%dir /usr/lib/rpm/kernel
/usr/lib/rpm/kernel/*
%endif
%if %do_vanilla
%files vanilla
/usr/src/linux-%kernelrelease-vanilla
%endif
%changelog %changelog

View File

@ -23,7 +23,12 @@
%include %_sourcedir/kernel-spec-macros %include %_sourcedir/kernel-spec-macros
%(chmod +x %_sourcedir/{@SCRIPTS@}) %define src_install_dir usr/src/linux-%kernelrelease%variant
# if undefined use legacy location of before SLE15
%if %{undefined _rpmmacrodir}
%define _rpmmacrodir /etc/rpm
%endif
Name: kernel-source@VARIANT@ Name: kernel-source@VARIANT@
Version: @RPMVERSION@ Version: @RPMVERSION@
@ -43,20 +48,7 @@ BuildRequires: bash-sh
BuildRequires: coreutils BuildRequires: coreutils
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: sed BuildRequires: sed
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} Requires(post): coreutils sed
BuildArch: noarch
%else
ExclusiveArch: do_not_build
%endif
Prefix: /usr/src
%define src_install_dir usr/src/linux-%kernelrelease%variant
# if undefined use legacy location of before SLE15
%if %{undefined _rpmmacrodir}
%define _rpmmacrodir /etc/rpm
%endif
Source0: @TARBALL_URL@linux-%srcversion.tar.xz Source0: @TARBALL_URL@linux-%srcversion.tar.xz
%if "@TARBALL_URL@" != "" %if "@TARBALL_URL@" != ""
Source1: @TARBALL_URL@linux-%srcversion.tar.sign Source1: @TARBALL_URL@linux-%srcversion.tar.sign
@ -105,6 +97,7 @@ 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
@ -129,7 +122,12 @@ Source113: patches.kabi.tar.bz2
Source114: patches.drm.tar.bz2 Source114: patches.drm.tar.bz2
Source120: kabi.tar.bz2 Source120: kabi.tar.bz2
Source121: sysctl.tar.bz2 Source121: sysctl.tar.bz2
Requires(post): coreutils sed %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
BuildArch: noarch
%else
ExclusiveArch: do_not_build
%endif
Prefix: /usr/src
# Source is only complete with devel files. # Source is only complete with devel files.
Requires: kernel-devel%variant = %version-%source_rel Requires: kernel-devel%variant = %version-%source_rel
Provides: %name = %version-%source_rel Provides: %name = %version-%source_rel
@ -152,6 +150,8 @@ Recommends: kernel-install-tools
%endif %endif
%obsolete_rebuilds %name %obsolete_rebuilds %name
%(chmod +x %_sourcedir/{@SCRIPTS@})
# Force bzip2 instead of lzma compression to # Force bzip2 instead of lzma compression to
# 1) allow install on older dist versions, and # 1) allow install on older dist versions, and
# 2) decrease build times (bsc#962356 boo#1175882) # 2) decrease build times (bsc#962356 boo#1175882)
@ -166,15 +166,8 @@ Linux kernel sources with many fixes and improvements.
%source_timestamp %source_timestamp
%post
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -f nondevel.files
%package -n kernel-devel%variant %package -n kernel-devel%variant
%obsolete_rebuilds kernel-devel%variant
Summary: Development files needed for building kernel modules Summary: Development files needed for building kernel modules
Group: Development/Sources Group: Development/Sources
AutoReqProv: off AutoReqProv: off
@ -182,24 +175,13 @@ Provides: kernel-devel%variant = %version-%source_rel
Provides: multiversion(kernel) Provides: multiversion(kernel)
Requires: kernel-macros Requires: kernel-macros
Requires(post): coreutils Requires(post): coreutils
%obsolete_rebuilds kernel-devel%variant
%description -n kernel-devel%variant %description -n kernel-devel%variant
Kernel-level headers and Makefiles required for development of Kernel-level headers and Makefiles required for development of
external kernel modules. external kernel modules.
%source_timestamp %source_timestamp
%post -n kernel-devel%variant
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -n kernel-devel%variant -f devel.files
%ghost /usr/src/linux%variant
%doc /usr/share/doc/packages/*
# Note: The kernel-macros package intentionally does not provide # Note: The kernel-macros package intentionally does not provide
# multiversion(kernel) nor is its name decorated with the variant (-rt) # multiversion(kernel) nor is its name decorated with the variant (-rt)
%package -n kernel-macros %package -n kernel-macros
@ -210,17 +192,8 @@ Provides: kernel-subpackage-macros
%description -n kernel-macros %description -n kernel-macros
This package provides the rpm macros and templates for Kernel Module Packages This package provides the rpm macros and templates for Kernel Module Packages
%source_timestamp %source_timestamp
%if "%variant" == ""
%files -n kernel-macros
%{_rpmmacrodir}/macros.kernel-source
/usr/lib/rpm/kernel-*-subpackage
%dir /usr/lib/rpm/kernel
/usr/lib/rpm/kernel/*
%endif
%package vanilla %package vanilla
%obsolete_rebuilds %name-vanilla %obsolete_rebuilds %name-vanilla
Summary: Vanilla Linux kernel sources with minor build fixes Summary: Vanilla Linux kernel sources with minor build fixes
@ -240,11 +213,6 @@ Vanilla Linux kernel sources with minor build fixes.
%source_timestamp %source_timestamp
%if %do_vanilla
%files vanilla
/usr/src/linux-%kernelrelease-vanilla
%endif
%prep %prep
echo "Symbol(s): %symbols" echo "Symbol(s): %symbols"
@ -325,6 +293,37 @@ done
# the future and be thus lower than the timestamps of files built from the # the future and be thus lower than the timestamps of files built from the
# source (bnc#669669). # source (bnc#669669).
ts="$(head -n1 %_sourcedir/source-timestamp)" ts="$(head -n1 %_sourcedir/source-timestamp)"
find %buildroot/usr/src/linux* ! -type l -print0 | xargs -0 touch -d "$ts" find %buildroot/usr/src/linux* ! -type l | xargs touch -d "$ts"
%post
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%post -n kernel-devel%variant
%relink_function
relink linux-%kernelrelease%variant /usr/src/linux%variant
%files -f nondevel.files
%files -n kernel-devel%variant -f devel.files
%ghost /usr/src/linux%variant
%doc /usr/share/doc/packages/*
%if "%variant" == ""
%files -n kernel-macros
%{_rpmmacrodir}/macros.kernel-source
/usr/lib/rpm/kernel-*-subpackage
%dir /usr/lib/rpm/kernel
/usr/lib/rpm/kernel/*
%endif
%if %do_vanilla
%files vanilla
/usr/src/linux-%kernelrelease-vanilla
%endif
%changelog %changelog

View File

@ -11,10 +11,8 @@
%endif %endif
# TW is usrmerged # TW is usrmerged
%if 0%{?suse_version} >= 1550 %if %{undefined usrmerged} && 0%{?suse_version} >= 1550
%define usrmerged 1 %define usrmerged 1
%else
%define usrmerged 0
%endif %endif
# source_rel is the package release string, without the rebuild counter # source_rel is the package release string, without the rebuild counter
@ -70,7 +68,7 @@
rm -f "$2" && ln -s "$1" "$2" \ rm -f "$2" && ln -s "$1" "$2" \
} }
%if %{usrmerged} %if 0%{?usrmerged}
%define kernel_module_directory /usr/lib/modules %define kernel_module_directory /usr/lib/modules
%else %else
%define kernel_module_directory /lib/modules %define kernel_module_directory /lib/modules

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
# #
# spec file for package kernel-syms-longterm # spec file for package kernel-syms-longterm
# #
# Copyright (c) 2025 SUSE LLC # Copyright (c) 2024 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,19 @@
# #
%define git_commit 5a14607a2385bc3c0e80ed83d05e02367bdcd4b7 %define git_commit e2ac9495079bda452d5e19af61c25c52dd6f89f7
%define variant -longterm%{nil} %define variant -longterm%{nil}
%include %_sourcedir/kernel-spec-macros %include %_sourcedir/kernel-spec-macros
Name: kernel-syms-longterm Name: kernel-syms-longterm
Version: 6.12.20 Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0-only
Group: Development/Sources
Version: 6.6.50
%if %using_buildservice %if %using_buildservice
%if 0%{?is_kotd} %if 0%{?is_kotd}
Release: <RELEASE>.g5a14607 Release: <RELEASE>.ge2ac949
%else %else
Release: 0 Release: 0
%endif %endif
@ -33,27 +36,24 @@ Release: 0
%define kernel_source_release %(LC_ALL=C rpm -q kernel-devel%variant-%version --qf "%{RELEASE}" | grep -v 'not installed' || echo 0) %define kernel_source_release %(LC_ALL=C rpm -q kernel-devel%variant-%version --qf "%{RELEASE}" | grep -v 'not installed' || echo 0)
Release: %kernel_source_release Release: %kernel_source_release
%endif %endif
Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0-only
Group: Development/Sources
URL: https://www.kernel.org/ URL: https://www.kernel.org/
AutoReqProv: off
BuildRequires: coreutils BuildRequires: coreutils
%ifarch aarch64 x86_64
Requires: kernel-longterm-devel = %version-%source_rel
%endif
Requires: pesign-obs-integration
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
Provides: multiversion(kernel)
Source: README.KSYMS
Requires: kernel-devel%variant = %version-%source_rel
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
ExclusiveArch: aarch64 x86_64 ExclusiveArch: aarch64 x86_64
%else %else
ExclusiveArch: do_not_build ExclusiveArch: do_not_build
%endif %endif
Prefix: /usr/src Prefix: /usr/src
AutoReqProv: off
Source: README.KSYMS
%ifarch aarch64 x86_64
Requires: kernel-longterm-devel = %version-%source_rel
%endif
Requires: pesign-obs-integration
Requires: kernel-devel%variant = %version-%source_rel
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
Provides: multiversion(kernel)
# Force bzip2 instead of lzma compression to # Force bzip2 instead of lzma compression to
# 1) allow install on older dist versions, and # 1) allow install on older dist versions, and
@ -70,14 +70,13 @@ package dependencies.
%source_timestamp %source_timestamp
%files
%dir %_docdir/%name
%_docdir/%name/README.SUSE
%prep %prep
%install %install
install -m 644 -D %{SOURCE0} %buildroot/%_docdir/%name/README.SUSE install -m 644 -D %{SOURCE0} %buildroot/%_docdir/%name/README.SUSE
%files
%dir %_docdir/%name
%_docdir/%name/README.SUSE
%changelog %changelog

View File

@ -22,6 +22,9 @@
%include %_sourcedir/kernel-spec-macros %include %_sourcedir/kernel-spec-macros
Name: kernel-syms@VARIANT@ Name: kernel-syms@VARIANT@
Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0-only
Group: Development/Sources
Version: @RPMVERSION@ Version: @RPMVERSION@
%if %using_buildservice %if %using_buildservice
%if 0%{?is_kotd} %if 0%{?is_kotd}
@ -33,25 +36,22 @@ Release: @RELEASE@
%define kernel_source_release %(LC_ALL=C rpm -q kernel-devel%variant-%version --qf "%{RELEASE}" | grep -v 'not installed' || echo 0) %define kernel_source_release %(LC_ALL=C rpm -q kernel-devel%variant-%version --qf "%{RELEASE}" | grep -v 'not installed' || echo 0)
Release: %kernel_source_release Release: %kernel_source_release
%endif %endif
Summary: Kernel Symbol Versions (modversions)
License: GPL-2.0-only
Group: Development/Sources
URL: https://www.kernel.org/ URL: https://www.kernel.org/
AutoReqProv: off
BuildRequires: coreutils BuildRequires: coreutils
@REQUIRES@
Requires: pesign-obs-integration
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
Provides: multiversion(kernel)
Source: README.KSYMS
Requires: kernel-devel%variant = %version-%source_rel
%if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0} %if ! 0%{?is_kotd} || ! %{?is_kotd_qa}%{!?is_kotd_qa:0}
ExclusiveArch: @ARCHS@ ExclusiveArch: @ARCHS@
%else %else
ExclusiveArch: do_not_build ExclusiveArch: do_not_build
%endif %endif
Prefix: /usr/src Prefix: /usr/src
AutoReqProv: off
Source: README.KSYMS
@REQUIRES@
Requires: pesign-obs-integration
Requires: kernel-devel%variant = %version-%source_rel
Provides: %name = %version-%source_rel
Provides: %name-srchash-%git_commit
Provides: multiversion(kernel)
# Force bzip2 instead of lzma compression to # Force bzip2 instead of lzma compression to
# 1) allow install on older dist versions, and # 1) allow install on older dist versions, and
@ -68,14 +68,13 @@ package dependencies.
%source_timestamp %source_timestamp
%files
%dir %_docdir/%name
%_docdir/%name/README.SUSE
%prep %prep
%install %install
install -m 644 -D %{SOURCE0} %buildroot/%_docdir/%name/README.SUSE install -m 644 -D %{SOURCE0} %buildroot/%_docdir/%name/README.SUSE
%files
%dir %_docdir/%name
%_docdir/%name/README.SUSE
%changelog %changelog

72
klp-symbols Normal file
View File

@ -0,0 +1,72 @@
#!/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

View File

@ -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.12/ v6.12
Comment: git version 2.47.0
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmc6xcwACgkQONu9yGCS
aT65NhAAvh7QiDnvnOlH/ZI9TVDE70GYARPN0OQTE+7YmtwYYxtDmIWpl5V4gjcK
jYZYWkNWZxyIi/dzZFoY8JMEwxdPfchkc2nqJxgHbZGTWudcLnTWxIRnzlEjs+7B
B7XIlCTGYMi3hYweHNZcDzvAFp+WA2e130ZTHeJSpEy7jkdcRxnKP4kYkE52bmOr
iK0MgfPhlDY90K9T/XQ1j0CdU9ekpwXXc+vfNPtPz4H5VpAkIvLzFmu/9oYtGBlf
8w4wel6GlzYsZL8XJmBgK2GyhHXLKeEAsTFGoJSnZBwgqfr9ux9iVNCUgfMNyBh/
sPp0ZzVWnqk5CsLTO/bzV64ckRLyBp9nfTekZAjnADqXPTEfDKEGKL/AUV8AFQPE
AvZzFAV8aOFQAUkofvQyJiD61UVjziNlxh0bXLcJrTdJbNqsEQlx4Z6mWWLeufrU
7UWboDuR0+MNGUIVCxFjYF30Zb18hIxxnZ++9+MhtbY0+aAUpJUkHm6HpNls2JtI
0M0iUjTYtlohcadLCo+IdO0+8/HiN1rtDy+PypTNvVI5aoS9gPuJPXMGE+rSgUAk
M0XrPcKrekJPgkL0rQJ+CfHSodsex6de9mzmPA/RHB4iwSqkAHSShs5KXzY6jy+T
fv5YOM+4AArm5xL1uDDDINp/a3tg5Nsv49ghfeYj6IzJPJ84ciw=
=pvFU
-----END PGP SIGNATURE-----

BIN
linux-6.12.tar.xz (Stored with Git LFS)

Binary file not shown.

19
linux-6.6.tar.sign Normal file
View 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.6/ v6.6
Comment: git version 2.42.0
iQIzBAABCAAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmU/R9oACgkQONu9yGCS
aT5mBBAAnQMFnUUwlXa/cHTZ0NxyQxVv7B8k/TrvbOqbd6/AQpO6WnOorpqVKite
rrvqz96FCDIsWAr7k4fzGvJhFlAmwyGsFb2kusiLekRBufKFiMyXl91wVm1pYtpS
FBC7HqCc9/LV/O5Mg/I2uWZ0PBYhRjiVCQonGQPx3lDgLEd2JnMLkADJhEONl9cD
IMayZGNV9rBUzS7cUBILk8QoBiod5P/RjwHb9Dn/oUev2r3iX09RN+bzIQroVX0B
I9bX1ipOSmPfdUy3Vr3JUS3n5VACjhwwYBwhzRIzJ038pWHn9fmBWspExAdOyOLl
cpqAzZ6befPT78/VqLyobhAsmRgfnOce8IzS0CU0wUenHGJkj1FthkLO1zNs9aZs
CyDZi9Z5iwocSaN6JHBk/fV3eG0vkH6k5jPEM8+DxJv+TcpXuM4JR47ymteB7qUt
UNCJQdOhTsAtQHVMwIaGUPOFI9rYmfiw9eippLRQF2juyYNHOZSHBZk9ZMG4V1zU
yhFhOrzERZ7LInXfiQAldxE4RFxWanNo7pBCy5SUBP8gcVjkLmicNXiuvPZe/q0e
ARLLOF5kB4H3rPwWzBuyp0yxADSgnLFPXmy/rh6hSCU2n3myQeI9hLu+sLCK40vu
/80rKPDiEdumGgtkHYfsus6HAbSv4MYaMYpMzpcWFxkTPz4xJbQ=
=wBW2
-----END PGP SIGNATURE-----

3
linux-6.6.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d926a06c63dd8ac7df3f86ee1ffc2ce2a3b81a2d168484e76b5b389aba8e56d0
size 140064536

View File

@ -6,7 +6,6 @@ else \
print( "" ) \ print( "" ) \
end end
} }
%usrmerged %{lua: susever = rpm.expand('%{?suse_version}'); if susever ~= '' and tonumber(susever) > 1550 then print('1') else print('0') end }
%kernel_module_package_release 1 %kernel_module_package_release 1
%kernel_module_package_buildreqs modutils kernel-syms kmod-compat suse-kernel-rpm-scriptlets %kernel_build_shell_package %kernel_module_package_buildreqs modutils kernel-syms kmod-compat suse-kernel-rpm-scriptlets %kernel_build_shell_package

4
mkspec
View File

@ -4,7 +4,7 @@ use strict;
use warnings; use warnings;
use File::Copy; use File::Copy;
use Getopt::Long qw(:config no_ignore_case); use Getopt::Long;
my $dir = "."; my $dir = ".";
my $rpmrelease; my $rpmrelease;
@ -64,7 +64,6 @@ my $split_optional = to_bool $vars{'SPLIT_OPTIONAL'};
my $supported_modules_check = to_bool $vars{'SUPPORTED_MODULES_CHECK'}; my $supported_modules_check = to_bool $vars{'SUPPORTED_MODULES_CHECK'};
my $build_pdf = to_bool $vars{'BUILD_PDF'}; my $build_pdf = to_bool $vars{'BUILD_PDF'};
my $build_html = to_bool $vars{'BUILD_HTML'}; my $build_html = to_bool $vars{'BUILD_HTML'};
my $generate_compile_commands = to_bool $vars{'GENERATE_COMPILE_COMMANDS'};
if (!defined ($rpmrelease)) { if (!defined ($rpmrelease)) {
$rpmrelease = $vars{'RELEASE'} || 0; $rpmrelease = $vars{'RELEASE'} || 0;
@ -141,7 +140,6 @@ my %macros = (
YEAR => (localtime time)[5] + 1900, YEAR => (localtime time)[5] + 1900,
COMPRESS_MODULES => $compress_modules, COMPRESS_MODULES => $compress_modules,
COMPRESS_VMLINUX => $compress_vmlinux, COMPRESS_VMLINUX => $compress_vmlinux,
GENERATE_COMPILE_COMMANDS => $generate_compile_commands,
); );
# binary spec files # binary spec files

View File

@ -90,7 +90,6 @@ my @riscv64_package_list = (
['dtb-microchip', 'microchip/*.dts', "Microchip based riscv64 systems"], ['dtb-microchip', 'microchip/*.dts', "Microchip based riscv64 systems"],
['dtb-renesas', 'renesas/*.dts', "Renesas based riscv64 systems"], ['dtb-renesas', 'renesas/*.dts', "Renesas based riscv64 systems"],
['dtb-sifive', 'sifive/*.dts', "SiFive based riscv64 systems"], ['dtb-sifive', 'sifive/*.dts', "SiFive based riscv64 systems"],
['dtb-sophgo', 'sophgo/*.dts', "Sophgo based riscv64 systems"],
['dtb-starfive', 'starfive/*.dts', "StarFive based riscv64 systems"], ['dtb-starfive', 'starfive/*.dts', "StarFive based riscv64 systems"],
['dtb-thead', 'thead/*.dts', "T-HEAD based riscv64 systems"], ['dtb-thead', 'thead/*.dts', "T-HEAD based riscv64 systems"],
); );
@ -109,6 +108,8 @@ sub generate_spec($$$)
unless ($exclusive_arch eq 'none'); unless ($exclusive_arch eq 'none');
my $subpkg_desc = ""; my $subpkg_desc = "";
my $subpkg_post = "";
my $subpkg_files = "";
my $subpkg_case = ""; my $subpkg_case = "";
my $all_supported_dtb = ""; my $all_supported_dtb = "";
my $DTS_folder = "arch/arm/boot/dts"; my $DTS_folder = "arch/arm/boot/dts";
@ -154,7 +155,7 @@ sub generate_spec($$$)
"%description -n $PKG_NAME\n" . "%description -n $PKG_NAME\n" .
"Device Tree files for $MACHINES.\n\n"; "Device Tree files for $MACHINES.\n\n";
$subpkg_desc .= $subpkg_post .=
"%post -n $PKG_NAME\n" . "%post -n $PKG_NAME\n" .
"cd /boot\n" . "cd /boot\n" .
"# If /boot/dtb is a symlink, remove it, so that we can replace it.\n" . "# If /boot/dtb is a symlink, remove it, so that we can replace it.\n" .
@ -174,7 +175,7 @@ sub generate_spec($$$)
$dtb_subdir .= "%dir %{dtbdir}$path\n"; $dtb_subdir .= "%dir %{dtbdir}$path\n";
} }
$subpkg_desc .= $subpkg_files .=
"%ifarch %arm aarch64 riscv64\n" . "%ifarch %arm aarch64 riscv64\n" .
"%files -n $PKG_NAME -f $PKG_NAME.list\n" . "%files -n $PKG_NAME -f $PKG_NAME.list\n" .
"%else\n" . "%else\n" .
@ -202,6 +203,8 @@ sub generate_spec($$$)
$_ =~ s/\$DTS_folder/$DTS_folder/g; $_ =~ s/\$DTS_folder/$DTS_folder/g;
$_ =~ s/\$SUBPKG_DESC/$subpkg_desc/g; $_ =~ s/\$SUBPKG_DESC/$subpkg_desc/g;
$_ =~ s/\$ALL_SUPPORTED_DTB/$all_supported_dtb/g; $_ =~ s/\$ALL_SUPPORTED_DTB/$all_supported_dtb/g;
$_ =~ s/\$SUBPKG_POST\n?/$subpkg_post/g;
$_ =~ s/\$SUBPKG_FILES\n?/$subpkg_files/g;
$_ =~ s/\$SUBPKG_CASE\n?/$subpkg_case/g; $_ =~ s/\$SUBPKG_CASE\n?/$subpkg_case/g;
print SPEC $_; print SPEC $_;
} }

View File

@ -3,7 +3,7 @@
use File::Basename; use File::Basename;
use File::Path; use File::Path;
use File::Find; use File::Find;
use Getopt::Long qw(:config no_ignore_case); use Getopt::Long;
use strict; use strict;
my %symbol_type_name = ( my %symbol_type_name = (

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:b8aa4bb8da08f541400ec3512c7a52f75adb26e8751a59c3a02222b9d1ca4077 oid sha256:70c0c9917837689b9d4d2c44a892b94b2343984a2c38323ce5cd4d099bf8df42
size 3715534 size 8015328

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:edf0af8a4cc13e726c4357bf3e3d929de85b9e46a985714f2571078e81e8883d oid sha256:554e8e4e583ef73827c621d3ef5593a0cffb137cb98e75047fa3572a0671a57a
size 4156 size 4243

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1 version https://git-lfs.github.com/spec/v1
oid sha256:97bc4a5505135705b252abf6e014da0382053a6994af1057dc4d6e9b2ae9db39 oid sha256:5d5ebdb172fe82ac1257746108c2d1739762458ac77d5efda1c1cc496f2eb260
size 39928 size 66755

View File

@ -1,8 +1,6 @@
# 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:1.0
SUSE:SLE-.* SUSE:SLE-.*
SUSE:Maintenance:.* SUSE:Maintenance:.*
openSUSE:[0-9].*:Update openSUSE:[0-9].*:Update

14723
series.conf

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,3 @@
2025-03-22 23:11:01 +0000 2024-09-08 09:48:30 +0000
GIT Revision: 5a14607a2385bc3c0e80ed83d05e02367bdcd4b7 GIT Revision: e2ac9495079bda452d5e19af61c25c52dd6f89f7
GIT Branch: slowroll GIT Branch: slowroll