1
0
forked from pool/kernel-source

Accepting request 20078 from Kernel:HEAD

Copy from Kernel:HEAD/kernel-source based on submit request 20078 from user coolo

OBS-URL: https://build.opensuse.org/request/show/20078
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/kernel-source?expand=0&rev=70
This commit is contained in:
OBS User autobuild 2009-09-07 20:37:07 +00:00 committed by Git OBS Bridge
parent 853350a2a1
commit 98078bd808
42 changed files with 1430 additions and 984 deletions

View File

@ -1,56 +0,0 @@
#! /bin/bash
sourcedir=${0%/*}
# A lot of symbols are exported by the main kernel image. Find out
# more precisely which built-in.o file defines them, and fill in
# that information in Module.symvers. (The built-in.o files are
# linked together from one or more object files in a directory.)
# We use this information to better group symbols by subsystems.
#
# Usage: built-in-where < Module.symvers
unset LANG ${!LC_*}
# Create a table of all symbol export in a built-in.o file, e.g.,
# 0xc87c1f84 ktime_get kernel/built-in EXPORT_SYMBOL_GPL
built_in_exports() {
# a/b/c/built-in.o gets linked into a/b/built-in.o, so ensure
# that we visit sub-directories first to split up symbols as
# much as possible.
for obj in $(find -name built-in.o -printf '%d %P\n' \
| sort -r \
| awk '{ print $2 }'); do
$sourcedir/symsets.pl --list-exported-symbols $obj
done
# We could go through the libraries as well, but those functions
# are so unlikely to change that this wouldn't help.
# (All remaining symbols will end up in the vmlinux set.)
#for archive in $(find -name '*.a'); do
# $sourcedir/symsets.pl --list-exported-symbols $archive
#done
}
# Filter out duplicates from a Module.symvers dump
unique_symbols() {
awk '
{ if ($2 in seen)
next
seen[$2] = 1
print
}
'
}
# Join together the two tables, including all lines from the first
# file that don't have a match in the second.
# Finally, remove the duplicate columns.
join -t $'\t' -j 2 -a 1 \
<(sort -k2) \
<(built_in_exports | unique_symbols | sort -k2) \
| awk '
BEGIN { FS = "\t" ; OFS = "\t" }
NF == 7 { print $2, $1, $6, $4 }
NF == 4 { print $2, $1, $3, $4 }
'

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bad75ef9b698a343e600b1c3c04f1150534bcb355243c4a11e6a2f9e71e7e764
size 154278
oid sha256:78b8257cf1fcbf78d4012bd3e219c6f37d3e12a5ea67efd1a045c94e6d9ebb43
size 154107

130
kabi.pl Normal file
View File

@ -0,0 +1,130 @@
#!/usr/bin/perl
use strict;
use warnings;
use Getopt::Long;
use Data::Dumper;
# ( { sym => regexp, mod => regexp, fail => 0/1 }, ... )
my @rules;
sub load_rules {
my $file = shift;
my $errors = 0;
xopen(my $fh, '<', $file);
while (<$fh>) {
chomp;
s/#.*//;
next if /^\s*$/;
my ($pattern, $verdict) = split(/\s+/);
my $new = {};
if (uc($verdict) eq "PASS") {
$new->{fail} = 0;
} elsif (uc($verdict) eq "FAIL") {
$new->{fail} = 1;
} else {
print STDERR "$file:$.: invalid verdict \"$verdict\", must be either PASS or FAIL.\n";
$errors++;
next;
}
# simple glob -> regexp conversion
$pattern =~ s/\*/.*/g;
$pattern =~ s/\?/./g;
$pattern =~ s/.*/^$&\$/;
if ($pattern =~ /\/|^vmlinux$/) {
$new->{mod} = $pattern;
} else {
$new->{sym} = $pattern;
}
push(@rules, $new);
}
if ($errors && !@rules) {
print STDERR "error: only garbage found in $file.\n";
exit 1;
}
close($fh);
}
sub load_symvers {
my $file = shift;
my %res;
my $errors = 0;
xopen(my $fh, '<', $file);
while (<$fh>) {
my @l = split(/\s+/);
if (@l < 3) {
print STDERR "$file:$.: unknown line\n";
$errors++;
next;
}
my $new = { crc => $l[0], mod => $l[2] };
$res{$l[1]} = $new;
}
if (!%res) {
print STDERR "error: no symvers found in $file.\n";
exit 1;
}
close($fh);
return %res;
}
my $kabi_errors = 0;
sub kabi_change {
my ($sym, $mod, $oldcrc, $newcrc) = @_;
my $fail = 1;
for my $rule (@rules) {
if ($rule->{mod} && $mod =~ $rule->{mod} ||
$rule->{sym} && $sym =~ $rule->{sym}) {
$fail = $rule->{fail};
last;
}
}
print STDERR "KABI: symbol $sym($mod) ";
if ($newcrc) {
print STDERR "changed crc from $oldcrc to $newcrc"
} else {
print STDERR "lost";
}
if ($fail) {
$kabi_errors++;
print STDERR "\n";
} else {
print STDERR " (tolerated)\n";
}
}
sub xopen {
open($_[0], $_[1], @_[2..$#_]) or die "$_[2]: $!\n";
}
my ($opt_verbose, $opt_rules);
my $res = GetOptions(
'verbose|v' => \$opt_verbose,
'rules|r=s' => \$opt_rules,
);
if (!$res || @ARGV != 2) {
print STDERR "Usage: $0 [--rules <rules file>] Module.symvers.old Module.symvers\n";
exit 1;
}
if (defined($opt_rules)) {
load_rules($opt_rules);
}
my %old = load_symvers($ARGV[0]);
my %new = load_symvers($ARGV[1]);
for my $sym (sort keys(%old)) {
if (!$new{$sym}) {
kabi_change($sym, $old{$sym}->{mod}, $old{$sym}->{crc}, 0);
} elsif ($old{$sym}->{crc} ne $new{$sym}->{crc}) {
kabi_change($sym, $new{$sym}->{mod}, $old{$sym}->{crc},
$new{$sym}->{crc});
}
}
if ($kabi_errors) {
print STDERR "KABI: aborting due to kabi changes.\n";
exit 1;
}
exit 0;

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d5d8af24aad423f56eef91ee46be7fa052c7dce757c0406d71a985f9a11347f0
size 2714
oid sha256:59d268a3fba95a4822be04a478e75c6875671e730955f3f7da59caccad496e28
size 426

View File

@ -35,7 +35,7 @@
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
@ -70,19 +70,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
@ -134,10 +134,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -197,10 +196,6 @@ Obsoletes: btusb-kmp
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
@DESCRIPTION@
@ -485,9 +480,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
@ -564,20 +556,14 @@ if [ %CONFIG_MODULES = y ]; then
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-debug
Summary: A Debug Version of the Kernel
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,9 +179,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This kernel has several debug facilities enabled that hurt performance.
@ -431,8 +427,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -498,20 +492,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-default
Summary: The Standard Kernel
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -138,10 +138,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -196,9 +195,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
The standard kernel for both uniprocessor and multiprocessor systems.
@ -446,8 +442,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -513,20 +507,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-desktop
Summary: Kernel optimized for the desktop
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,26 +179,23 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This kernel is optimized for the desktop. It is configured for lower latency
and has many of the features that aren't usually used on desktop machines
disabled.
%ifarch %ix86
This kernel supports up to 64GB of main memory. It requires Physical
Addressing Extensions (PAE), which were introduced with the Pentium Pro
processor.
PAE is not only more physical address space but also important for the
"no execute" feature which disables execution of code that is marked as
non-executable. Therefore, the PAE kernel should be used on any systems
that support it, regardless of the amount of main memory.
%endif
%source_timestamp
%prep
if ! [ -e %_sourcedir/linux-%srcversion.tar.bz2 ]; then
echo "The %name-%version.nosrc.rpm package does not contain the" \
@ -441,8 +437,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -508,20 +502,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \
@ -644,19 +632,18 @@ This kernel is optimized for the desktop. It is configured for lower latency
and has many of the features that aren't usually used on desktop machines
disabled.
%ifarch %ix86
This kernel supports up to 64GB of main memory. It requires Physical
Addressing Extensions (PAE), which were introduced with the Pentium Pro
processor.
PAE is not only more physical address space but also important for the
"no execute" feature which disables execution of code that is marked as
non-executable. Therefore, the PAE kernel should be used on any systems
that support it, regardless of the amount of main memory.
%endif
This package contains only the base modules, required in all installs.
%source_timestamp
%preun base -f preun-base.sh
%postun base -f postun-base.sh
@ -693,19 +680,18 @@ This kernel is optimized for the desktop. It is configured for lower latency
and has many of the features that aren't usually used on desktop machines
disabled.
%ifarch %ix86
This kernel supports up to 64GB of main memory. It requires Physical
Addressing Extensions (PAE), which were introduced with the Pentium Pro
processor.
PAE is not only more physical address space but also important for the
"no execute" feature which disables execution of code that is marked as
non-executable. Therefore, the PAE kernel should be used on any systems
that support it, regardless of the amount of main memory.
%endif
This package contains additional modules not supported by Novell.
%source_timestamp
%preun extra -f preun-extra.sh
%postun extra -f postun-extra.sh

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-kdump
Summary: kernel for kdump
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,9 +179,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This kernel is intended for kdump. It can not be booted with a normal
@ -433,8 +429,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -500,20 +494,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-pae
Summary: Kernel with PAE Support
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -126,10 +126,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -184,9 +183,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This kernel supports up to 64GB of main memory. It requires Physical
@ -441,8 +437,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -508,20 +502,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-ppc64
Summary: Kernel for ppc64 Systems
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -126,10 +126,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -184,9 +183,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This package contains the kernel for:
@ -441,8 +437,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -508,20 +502,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-ps3
Summary: kernel for ps3 bootloader
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,9 +179,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This package contains the kernel for the PS3 bootloader. PS3 systems
@ -433,8 +429,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -500,20 +494,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-s390
Summary: The Standard Kernel
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -126,10 +126,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -184,9 +183,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
The standard kernel.
@ -434,8 +430,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -501,20 +495,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -30,7 +30,7 @@
Name: kernel-source
Summary: The Linux Kernel Sources
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -61,13 +61,12 @@ Source34: check-supported-list
Source37: README.SUSE
Source38: README.KSYMS
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: extract-modaliases
Source48: macros.kernel-source
Source49: kernel-module-subpackage
Source50: symsets.pl
Source50: kabi.pl
Source51: mkspec
Source52: kernel-source%variant.changes
Source53: kernel-source.spec.in
@ -96,7 +95,7 @@ Source120: kabi.tar.bz2
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
Prefix: /usr/src
%(chmod +x %_sourcedir/{guards,check-for-config-changes,symsets.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols})
%(chmod +x %_sourcedir/{guards,check-for-config-changes,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols})
%define symbols %(set -- $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
%define variant_symbols %(case %name in (*-rt) echo "RT" ;; esac)
%define do_vanilla "%variant" == ""

View File

@ -65,13 +65,12 @@ Source34: check-supported-list
Source37: README.SUSE
Source38: README.KSYMS
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: extract-modaliases
Source48: macros.kernel-source
Source49: kernel-module-subpackage
Source50: symsets.pl
Source50: kabi.pl
Source51: mkspec
Source52: kernel-source%variant.changes
Source53: kernel-source.spec.in
@ -101,7 +100,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildArch: noarch
Prefix: /usr/src
%(chmod +x %_sourcedir/{guards,check-for-config-changes,symsets.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols})
%(chmod +x %_sourcedir/{guards,check-for-config-changes,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols})
%define symbols %(set -- $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
%define variant_symbols %(case %name in (*-rt) echo "RT" ;; esac)

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -23,7 +23,7 @@
Name: kernel-syms
Summary: Kernel Symbol Versions (modversions)
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%define kernel_source_release %(LC_ALL=C rpm -q kernel-source%variant-%version --qf "%{RELEASE}" | grep -v 'not installed' || echo 0)

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-trace
Summary: The Realtime Linux Kernel
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,9 +179,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
This kernel is compiled for realtime applications.
@ -430,8 +426,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -497,20 +491,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-vanilla
Summary: The Standard Kernel - without any SUSE patches
Version: 2.6.31
Release: 5
Release: 6
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -130,10 +130,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -188,9 +187,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
The standard kernel - without any SUSE patches
@ -438,8 +434,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -505,20 +499,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -1,3 +1,85 @@
-------------------------------------------------------------------
Mon Sep 7 12:40:45 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: require minimum versions of
module-init-tools and perl-Bootloader, the %post script is no
longer compatible with ancient versions.
-------------------------------------------------------------------
Mon Sep 7 11:53:09 CEST 2009 - mmarek@suse.cz
- rpm/kernel-binary.spec.in: obsolete %name-base <= 2.6.31, the
previous <= 2.6.30-1 didn't catch some cases obviously
(bnc#533766).
-------------------------------------------------------------------
Fri Sep 4 21:11:39 CEST 2009 - jeffm@suse.de
- Enabled CONFIG_SCSI_DEBUG=m (bnc#535923).
-------------------------------------------------------------------
Fri Sep 4 14:35:57 CEST 2009 - mmarek@suse.cz
- kabi/severities, rpm/kabi.pl, rpm/kernel-binary.spec.in,
- rpm/kernel-source.spec.in: Use a simple script to check kabi by
comparing Module.symvers files (similar to the old SLES9 one).
- rpm/built-in-where: Delete.
- rpm/symsets.pl: Delete.
- kabi/commonsyms: Delete.
- kabi/usedsyms: Delete.
-------------------------------------------------------------------
Fri Sep 4 11:39:02 CEST 2009 - mmarek@suse.cz
- patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin:
kbuild: rebuild fix for Makefile.modbuiltin.
-------------------------------------------------------------------
Thu Sep 3 02:43:28 CEST 2009 - gregkh@suse.de
- patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch:
Delete, it was wrong.
-------------------------------------------------------------------
Wed Sep 2 17:27:49 CEST 2009 - jbeulich@novell.com
- Update Xen config files.
-------------------------------------------------------------------
Wed Sep 2 15:39:54 CEST 2009 - jbeulich@novell.com
- Update Xen patches to 2.6.31-rc8 and c/s 931.
- patches.fixes/use-totalram_pages: use totalram_pages in favor
of num_physpages for sizing boot time allocations (bnc#509753).
- patches.xen/xen-x86-per-cpu-vcpu-info: x86: use per-cpu storage
for shared vcpu_info structure.
-------------------------------------------------------------------
Wed Sep 2 08:06:15 CEST 2009 - tiwai@suse.de
- patches.drivers/alsa-hda-2.6.32-pre: Refresh; merged fixes for
IDT92HD73* codecs
-------------------------------------------------------------------
Tue Sep 1 19:16:24 CEST 2009 - jeffm@suse.com
- patches.apparmor/apparmor.diff: Update to latest git.
-------------------------------------------------------------------
Tue Sep 1 19:13:51 CEST 2009 - jeffm@suse.com
- patches.arch/add_support_for_hpet_msi_intr_remap.patch:
intr-remap: generic support for remapping HPET MSIs
(bnc#532758).
- patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch:
x86: arch specific support for remapping HPET MSIs (bnc#532758).
-------------------------------------------------------------------
Tue Sep 1 15:11:15 CEST 2009 - mmarek@suse.cz
- rpm/package-descriptions: fix description of the x86_64
kernel-desktop package (bnc#535457).
-------------------------------------------------------------------
Mon Aug 31 22:02:50 CEST 2009 - jeffm@suse.com

View File

@ -31,7 +31,7 @@
%define obj_install_dir %src_install_dir-obj
%define rpm_install_dir %buildroot%obj_install_dir
%define kernel_build_dir %my_builddir/linux-obj
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,built-in-where,modversions,symsets.pl,split-modules})
%(chmod +x %_sourcedir/{arch-symbols,find-provides,guards,check-for-config-changes,check-supported-list,modversions,kabi.pl,split-modules})
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
%define cpu_arch_flavor %cpu_arch/%build_flavor
# Define some CONFIG variables as rpm macros as well. (rpm cannot handle
@ -49,7 +49,7 @@
Name: kernel-xen
Summary: The Xen Kernel
Version: 2.6.31
Release: 4
Release: 5
%if %using_buildservice
%else
%endif
@ -62,19 +62,19 @@ BuildRequires: fdupes
Provides: %{name}_%_target_cpu = %version-%release
%if %split_base
Provides: kernel-base = %version-%source_rel
# 2.6.30-1 was the last package with split -base
Obsoletes: %name-base <= 2.6.30-1
# Obsolete the -base subpackage from 11.1 and 11.2 development phase
Obsoletes: %name-base <= 2.6.31
%endif
Requires(pre): coreutils awk
Requires(post): module-init-tools
# Need a module-init-tools with /usr/lib/module-init-tools/weak-modules2
Requires(post): module-init-tools >= 3.4
# This Requires is wrong, because the post/postun scripts have a
# test -x update-bootloader, having perl-Bootloader is not a hard requirement.
# But, there is no way to tell rpm or yast to schedule the installation
# of perl-Bootloader before kernel-binary.rpm if both are in the list of
# packages to install/update. Likewise, this is true for mkinitrd.
# A specific version of perl-Bootloader is not required, because the post/postun
# scripts handle the two API versions of 10.1/SLES10 GA and 10.2/SLES10 SP1
Requires(post): perl-Bootloader
# Need a perl-Bootloader with /usr/lib/bootloader/bootloader_entry
Requires(post): perl-Bootloader >= 0.4.15
Requires(post): mkinitrd
#!BuildIgnore: perl-Bootloader mkinitrd
%ifarch ia64
@ -122,10 +122,9 @@ Source31: guards
Source33: check-for-config-changes
Source34: check-supported-list
Source40: source-timestamp
Source41: built-in-where
Source44: find-provides
Source46: modversions
Source47: symsets.pl
Source47: kabi.pl
Source48: split-modules
Source49: kernel-spec-macros
Source100: config.tar.bz2
@ -180,9 +179,6 @@ Obsoletes: btusb-kmp
%define __find_provides %_sourcedir/find-provides %name
# Will modules not listed in supported.conf abort the kernel build (0/1)?
%define supported_modules_check 0
# kABI change tolerance (default in maintenance should be 4, 6, 8 or 15,
# 31 is the maximum; see scripts/kabi-checks)
%define tolerate_kabi_changes 6
%description
The Linux kernel for Xen paravirtualization.
@ -433,8 +429,6 @@ if [ %CONFIG_MODULES = y ]; then
mkdir -p %rpm_install_dir/%cpu_arch_flavor
mkdir -p %buildroot/usr/src/linux-obj/%cpu_arch
ln -s %build_flavor %buildroot/usr/src/linux-obj/%cpu_arch_flavor
# Figure out where the symbols that vmlinux exports are defined.
%_sourcedir/built-in-where < Module.symvers > Module.symvers.split
gzip -c9 < Module.symvers > %buildroot/boot/symvers-%kernelrelease-%build_flavor.gz
make modules_install $MAKE_ARGS INSTALL_MOD_PATH=%buildroot
if ! %_sourcedir/check-supported-list \
@ -500,20 +494,14 @@ if [ %CONFIG_MODULES = y ]; then
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
) > %my_builddir/base-modules
%endif
# check for kabi changes
if [ -z "fixme-broken" ]; then
%_sourcedir/symsets.pl --check-kabi \
$reference \
--symvers=Module.symvers.split \
--modules=%my_builddir/base-modules-br \
--modules=%my_builddir/main-modules-br \
--modules=%my_builddir/unsupported-modules-br \
--commonsyms=%my_builddir/kabi/commonsyms \
--usedsyms=%my_builddir/kabi/usedsyms \
--severities=%my_builddir/kabi/severities \
--max-badness=%tolerate_kabi_changes
res=0%my_builddir/kabi/%cpu_arch/symvers-%build_flavor
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
# check for kabi changes
%_sourcedir/kabi.pl --rules %my_builddir/kabi/severities \
%my_builddir/kabi/%cpu_arch/symvers-%build_flavor \
Module.symvers || res=$?
fi
if [ $? -ne 0 ]; then
if [ $res -ne 0 ]; then
if [ ! -e %my_builddir/kabi/%cpu_arch/ignore-%build_flavor -a \
! -e %_sourcedir/IGNORE-KABI-BADNESS ]; then
echo "Create a file IGNORE-KABI-BADNESS in the kernel-source" \

View File

@ -27,6 +27,7 @@ This kernel is optimized for the desktop. It is configured for lower latency
and has many of the features that aren't usually used on desktop machines
disabled.
%ifarch %ix86
This kernel supports up to 64GB of main memory. It requires Physical
Addressing Extensions (PAE), which were introduced with the Pentium Pro
processor.
@ -35,6 +36,7 @@ PAE is not only more physical address space but also important for the
"no execute" feature which disables execution of code that is marked as
non-executable. Therefore, the PAE kernel should be used on any systems
that support it, regardless of the amount of main memory.
%endif
=== kernel-kdump ===
kernel for kdump

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e9cd4d2332d4b4eef06954dac142044c4208126a5d99e2c1ee0b187f63a13efe
size 36999
oid sha256:f7952568fac8ce1fbdb98c918cf3ee1fa2c290654697fe734e7352ae3119eda3
size 37236

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:546281c82bb9c0755ebc7d21b1ecc7157bc208a73dc0c965da227caa5337a073
size 34136
oid sha256:3bc290cf874191e00a8f19e5b64fe36811eb88a8421cdeae837be38ada2d6d94
size 36927

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:384b6482a513e9669e40fb1ddd1a52921ca4500b2d22127c4d5c864fb842b3cf
size 233567
oid sha256:f0c13365031d6849f6553364d8f157e84855ea5df347e4c1f377d7ccf3ea4dec
size 235405

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:744b503c4b53f9240938ebd69487cec98292c87113536ef9fbc48bc7c9c9c5b2
size 28204
oid sha256:6770bff421e2e8470ba681923d4f2c7fb01e306e09e6ae1b0f7a087dff069ca2
size 31212

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:0cf7be093249b4c7c745bcfc0b40c90dfff428e58617de8712169c38a9be23ee
size 853037
oid sha256:d8a4cd5076e03ad56b2ea8eef1bcb4d64a20169b78dd517a846bf2f9c8f9d87d
size 853617

View File

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1277e631bee77ff18019efeec1b1db6e70f9fc33c68aee49dc5cf00c9aaaddc3
size 1840046
oid sha256:d458f8185d75548cad6ecd74662e2eb4241068a3790a6317ae8401f9507020e3
size 1846374

View File

@ -82,6 +82,7 @@
patches.fixes/kbuild-fix-generating-of-.symtypes-files
patches.suse/genksyms-add-override-flag.diff
patches.suse/kbuild-generate-modules.builtin
patches.suse/kbuild-rebuild-fix-for-Makefile.modbuiltin
########################################################
# Simple export additions/removals
@ -143,6 +144,9 @@
+needs_update patches.arch/x86_64-hpet-64bit-timer.patch
+needs_to_go_away patches.suse/x86-mark_rodata_rw.patch
patches.arch/add_support_for_hpet_msi_intr_remap.patch
patches.arch/add_x86_support_for_hpet_msi_intr_remap.patch
########################################################
# x86_64/4096CPUS - from SGI
########################################################
@ -225,6 +229,7 @@
patches.suse/connector-read-mostly
patches.suse/kbd-ignore-gfx.patch
patches.fixes/ds1682-build-fix
patches.fixes/use-totalram_pages
########################################################
#
@ -430,7 +435,6 @@
# USB
########################################################
patches.suse/usb-storage-disable-delay.patch
patches.drivers/usb-storage-increase-the-bcd-range-in-sony-s-bad-device-table.patch
########################################################
# I2C
@ -682,8 +686,10 @@
patches.xen/xen3-patch-2.6.31-rc4
patches.xen/xen3-patch-2.6.31-rc4-rc5
patches.xen/xen3-patch-2.6.31-rc5-rc6
patches.xen/xen3-patch-2.6.31-rc7-rc8
patches.xen/xen3-seccomp-disable-tsc-option
+needs_to_go_away patches.xen/xen3-x86-mark_rodata_rw.patch
patches.xen/xen3-use-totalram_pages
patches.xen/xen3-kdb-x86
patches.xen/xen3-stack-unwind
patches.xen/xen3-x86_64-unwind-annotations
@ -717,6 +723,7 @@
patches.xen/xen-x86-bigmem
patches.xen/xen-x86-machphys-prediction
patches.xen/xen-x86-exit-mmap
patches.xen/xen-x86-per-cpu-vcpu-info
patches.xen/xen-x86_64-pgd-pin
patches.xen/xen-x86_64-pgd-alloc-order
patches.xen/xen-x86_64-dump-user-pgt

View File

@ -1,3 +1,3 @@
2009-08-31 22:03:21 +0200
GIT Revision: 0bcd5def77ca49ab74bce45849fa48bdbf368236
2009-09-07 12:41:42 +0200
GIT Revision: 6c54e538dbaf5f30b305f599307d5919a12d6cbb
GIT Branch: master

View File

@ -1,553 +0,0 @@
#!/usr/bin/env perl
=head1 NAME
symsets.pl - tool to generate symsets for the kernel packages
=head1 SYNOPSIS
symsets.pl --list-exported-symbols modules...
symsets.pl --generate-symsets [--reference=DIR] --output-dir=DIR modules...
symsets.pl --list-symsets [--reference=DIR] modules...
symsets.pl --check-kabi --reference=DIR modules...
=head1 OPTIONS
=head3 MODE OPTIONS
One of the following options has to be selected:
=over
=item B<--list-exported-symbols>
List symbols exported by modules in a Module.symvers style format.
=item B<--generate-symsets>
Group exported symbols into symsets. Symbols from modules from the same
directory end up in one symset. This option requires B<--output-dir>.
=item B<--list-symsets>
Like B<--generate-symsets>, but only print the symset names on stdout.
=item B<--check-kabi>
Check for kabi changes. This requires B<--reference>.
=back
=head3 OTHER OPTIONS
=over
=item B<-v, --verbose>
Increase verbosity.
=item B<--symvers-file=Module.symvers>
Load built-in symbols from Module.symvers. Only symbols provided by the main
kernel image (marked as vmlinux or built-in) are read from this file.
=item B<--modules=FILE>
Read list of modules from FILE instead of command line. This option can be used
multiple times to read modules from multiple files.
=item B<--required-modules=FILE>
List of modules that are installed by packages required by this package. If
a module moves from subpackage A to subpackage B, this can result in a changed
symset checksum in A. Together with B<--reference>, this option ensures that
the old checksum is provided in the subpackage that installs or requires
all modules from the symset.
=item B<--reference=DIR>
Load symsets of a previous kernel package from DIR and add them to the output
if the symbols are still provided by this kernel package.
=item B<--output-dir=DIR>
Write symsets into DIR (B<--generate-symsets> only).
=item B<--max-badness=NUM>
Set maximum allowed badness to NUM. Meaningful values are 4, 6, 8, 15 or 31
(B<--check-kabi> only).
=item B<--commonsyms=FILE>
Read common symbols from FILE. Badness for changes to common symbols is
incremented by 8 (the resulting badness is 16 by default). (B<--check-kabi>
only).
=item B<--usedsyms=FILE>
Read used symbols from FILE. Badness for changes to used symbols is incremented
by 16 (the resulting badness is 24 by default). (B<--check-kabi> only).
=item B<--severities=FILE>
Read a table of kabi change severities from FILE. Each line consists of a
GLOB-SEVERITY pair separated by whitespace. Changes in modules matching GLOB
will have severity SEVERITY instead of the default 8. (B<--check-kabi> only).
=back
=cut
use strict;
use warnings;
#use diagnostics;
use Digest::MD5 qw(md5_hex);
use Getopt::Long;
use File::Temp qw(tempfile);
eval { require Pod::Usage; };
if ($@) {
sub pod2usage {
my %opts = @_;
print STDERR
"Usage:
symsets.pl --list-exported-symbols ...
symsets.pl --generate-symsets [--reference=DIR] --output-dir=DIR ...
symsets.pl --list-symsets [--reference=DIR] ...
symsets.pl --check-kabi --reference=DIR ...
Install Pod::Usage for a better help message.
";
exit $opts{-exitval};
}
} else {
Pod::Usage->import('pod2usage');
}
my @cleanfiles = ();
END {
unlink @cleanfiles;
}
our ($opt_verbose);
our $kabi_badness = 0;
our (%commonsyms, %usedsyms, @severities);
our ($opt_list_exp, $opt_gen_sets, $opt_list_sets, $opt_check_kabi) = (0,0,0,0);
our ($opt_max_badness, $opt_commonsyms, $opt_usedsyms, $opt_severities);
our ($opt_symvers_file, $opt_reference);
our ($opt_output_dir);
sub main {
my (@modules, @pulled_modules);
my $res = GetOptions(
'verbose|v' => \$opt_verbose,
'list-exported-symbols' => \$opt_list_exp,
'generate-symsets' => \$opt_gen_sets,
'list-symsets' => \$opt_list_sets,
'check-kabi' => \$opt_check_kabi,
'max-badness=i' => \$opt_max_badness,
'commonsyms|common-syms=s' => \$opt_commonsyms,
'usedsyms|used-syms=s' => \$opt_usedsyms,
'severities=s' => \$opt_severities,
'symvers-file=s' => \$opt_symvers_file,
'modules=s' => sub { push(@modules, load_list($_[1])); },
'required-modules=s' => sub { push(@pulled_modules, load_list($_[1])); },
'reference=s' => \$opt_reference,
'output-dir=s' => \$opt_output_dir,
'usage' => sub { pod2usage(-exitval => 0, -verbose => 0); },
'help' => sub { pod2usage(-exitval => 0, -verbose => 1); },
);
# boring option checking
my $opt_err = sub {
print STDERR "ERROR: @_\n";
$res = 0;
};
&$opt_err("Please choose one of --list-exported-symbols, --generate-symsets, --list-symsets or --check-kabi")
if ($opt_list_exp + $opt_gen_sets + $opt_list_sets > 1 ||
!($opt_list_exp + $opt_gen_sets + $opt_list_sets + $opt_check_kabi));
&$opt_err("--check-kabi doesn't work with --list-exported-symbols")
if ($opt_list_exp && $opt_check_kabi);
&$opt_err("--check-kabi requires --reference")
if ($opt_check_kabi && !$opt_reference);
&$opt_err("--output-dir only makes sense with --generate-symsets")
if ($opt_output_dir && !$opt_gen_sets);
&$opt_err("--generate-symsets requires --output-dir")
if ($opt_gen_sets && !$opt_output_dir);
if (!$opt_check_kabi) {
for my $opt qw(max-badness commonsyms usedsyms severities) {
no strict 'refs';
my $var = "opt_$opt";
$var =~ s/-/_/g;
if (defined(${$var})) {
&$opt_err("--$opt only makes sense with --check-kabi");
}
}
}
# get list of modules
if (@modules == 0) {
@modules = @ARGV;
}
if (@modules == 0 && !defined($opt_symvers_file)) {
&$opt_err("No modules supplied");
}
if (!$res) {
pod2usage(-exitval => 1, -verbose => 0, -output => ">&2");
}
# get list of exports
my (@exports, @pulled_exports);
for my $file (@modules) {
push(@exports, module_exports($file));
}
if (defined($opt_symvers_file)) {
push(@exports, builtin_exports(parse_symset($opt_symvers_file)));
}
if ($opt_list_exp) {
print format_exports(@exports);
exit 0;
}
for my $file (@pulled_modules) {
push(@pulled_exports, module_exports($file));
}
# generate symsets and optionally check kabi
my (@ref, @sets);
@sets = split_into_symsets(@exports);
if (defined($opt_reference)) {
@ref = load_symsets($opt_reference);
if ($opt_check_kabi) {
load_kabi_files($opt_commonsyms, $opt_usedsyms, $opt_severities);
}
# records kabi breakage if $opt_check_kabi is set
preserve_symsets(\@sets, \@ref, \@pulled_exports);
}
if ($opt_gen_sets) {
write_symsets($opt_output_dir, @sets);
} elsif ($opt_list_sets) {
write_symsets(undef, @sets);
}
if ($kabi_badness) {
print STDERR "KABI: badness is $kabi_badness";
if (!defined($opt_max_badness) || $kabi_badness <= $opt_max_badness) {
print STDERR " (tolerated)\n";
} else {
print STDERR " (exceeds threshold $opt_max_badness), aborting\n";
exit 1;
}
}
exit 0;
}
# structures used:
# %export:
# (crc => $crc, sym => $sym, mod => $module, type => $type)
# @exportlist
# ({crc => $crc, sym => $sym, mod => $module, type => $type}, ...)
# @symset:
# ($name, [{crc => $crc, sym => $sym, mod => $module, type => $type}, ...])
# @symsetlist:
# (
# [$name, [{crc => $crc, sym => $sym, mod => $module, type => $type}, ...],
# ...
# )
#
# parse a Modules.symvers-style file
# returns an exportlist
sub parse_symset {
my ($file) = @_;
my @res;
open(my $fh, '<', $file) or die "Error opening $file: $!\n";
while (<$fh>) {
my @l = split(/\s+/);
if (@l < 4) {
print STDERR "$file:$.: unknown line\n";
next;
}
$l[0] =~ s/^0x//;
push(@res, {crc => $l[0], sym => $l[1], mod => $l[2], type => $l[3]});
}
close($fh);
return @res;
}
# greps an exportlist for built-in symbols
sub builtin_exports {
return grep { $_->{mod} =~ /(^vmlinux$)|(\/built-in$)/ } @_;
}
my %export_types = (
__ksymtab => "EXPORT_SYMBOL",
__ksymtab_unused => "EXPORT_UNUSED_SYMBOL",
__ksymtab_gpl => "EXPORT_SYMBOL_GPL",
__ksymtab_unused_gpl => "EXPORT_UNUSED_SYMBOL_GPL",
__ksymtab_gpl_future => "EXPORT_SYMBOL_GPL_FUTURE"
);
# returns an exportlist for a given module
sub module_exports {
my ($file) = @_;
my (%crcs, %types, @res);
my $mod = $file;
if ($file =~ /\/vmlinu[xz]/) {
$mod = "vmlinux";
} else {
$mod =~ s/.*\/lib\/modules\/[^\/]*\/kernel\///;
$mod =~ s/\.(k?o|a)$//;
}
if ($file =~ /\.gz$|\/vmlinuz/) {
my ($fh, $newfile) = tempfile();
close($fh);
push(@cleanfiles, $newfile);
system("gzip -cd $file >$newfile");
$file = $newfile;
}
open(my $pipe, '-|', 'objdump', '-t', $file) or die "objdump -t $file: $!\n";
while (<$pipe>) {
my $l = $_;
my @l = split(/\s+/);
next if (@l < 3);
next if ($l =~ /^[^ ]* .....d/); # debug symbol
my $sym = $l[$#l];
my $sec = $l[$#l - 2];
if ($sym =~ /^__crc_(.*)/) {
$crcs{$1} = $l[0];
$crcs{$1} =~ s/^0{8}//;
} elsif ($sym =~ /^__ksymtab_(.*)/ && exists($export_types{$sec})) {
$types{$1} = $export_types{$sec};
}
}
close($pipe);
if ($? != 0) {
die "objdump returned an error\n";
}
for my $sym (keys(%types)) {
push(@res, {sym => $sym, crc => $crcs{$sym} || "0"x8, mod => $mod,
type => $types{$sym}});
}
return @res;
}
# format an exportlist for output
sub format_exports {
my $res = "";
for my $exp (sort { $a->{sym} cmp $b->{sym} } @_) {
$res .= "0x$exp->{crc}\t$exp->{sym}\t$exp->{mod}\t$exp->{type}\n";
}
return $res;
}
# splits exports by directories, returns a symsetlist
sub split_into_symsets {
my %sets;
for my $exp (@_) {
my $set = $exp->{mod};
$set =~ s/\/[^\/]+$//;
$set =~ s/\//_/g;
$sets{$set} ||= [];
push(@{$sets{$set}}, $exp);
}
return map { [$_, $sets{$_}] } keys(%sets)
}
# loads symsets from a directory created by write_symsets
# returns symsetlist
# FIXME: multiple versions of a symset
sub load_symsets {
my ($dir) = @_;
my @sets;
opendir(my $dh, $dir) or die "Error reading directory $dir: $!\n";
for my $file (readdir($dh)) {
next if $file =~ /^\.\.?$/;
if (!-f "$dir/$file" || $file !~ /^([\w-]+)\.[0-9a-f]{16}$/) {
print STDERR "Ignoring unknown file $dir/$file\n";
next;
}
my $set = $1;
push(@sets, [$set, [parse_symset("$dir/$file")]]);
}
closedir($dh);
return @sets;
}
sub hash {
return substr(md5_hex(@_), 0, 16);
}
# writes symsets as returned by split_into_symsets/load_symsets into $dir
sub write_symsets {
my $dir = shift;
my @sets = @_;
my $print_only = (!defined($dir));
for my $set (@sets) {
my $name = $set->[0];
my $exports = $set->[1];
my $data = format_exports(@$exports);
my $hash = hash($data);
if ($print_only) {
print "$name.$hash\n";
} else {
my $f = "$dir/$name.$hash";
open(my $fh, '>', $f) or die "error creating $f: $!\n";
print $fh $data;
close($fh);
}
}
}
# loads kabi check configurations into %commonsyms, %usedsyms and %severities
sub load_kabi_files {
my ($csfile, $usfile, $sevfile) = @_;
if (defined($csfile)) {
open(my $fh, '<', $csfile) or die "Can't open $csfile: $!\n";
%commonsyms = map { s/\s+//g; ; $_ => 1 } <$fh>;
close($fh);
}
if (defined($usfile)) {
open(my $fh, '<', $usfile) or die "Can't open $usfile: $!\n";
%usedsyms = map { s/\s+//g; $_ => 1 } <$fh>;
close($fh);
}
if (defined($sevfile)) {
open(my $fh, '<', $sevfile) or die "Can't open $sevfile: $!\n";
while (<$fh>) {
chomp;
s/#.*//;
next if /^\s*$/;
my @f = split(/\s+/);
if (@f != 2) {
print STDERR "$sevfile:$.: unknown line\n";
next;
}
if ($f[1] !~ /^\d+$/) {
print STDERR "$sevfile:$.: invalid severity $f[1]\n";
next;
}
# simple glob -> regexp conversion
$f[0] =~ s/\*/.*/g;
$f[0] =~ s/\?/./g;
$f[0] =~ s/.*/^$&\$/;
push(@severities, [@f]);
}
close($fh);
}
}
# loads a list of filenames from file
sub load_list {
my ($file) = @_;
my ($fh, @res);
if ($file eq '-') {
open($fh, '<&STDIN');
} else {
open($fh, '<', $file) or die "Error opening $file: $!\n";
}
@res = <$fh>;
chomp(@res);
close($fh);
return @res;
}
# record kabi changes
sub kabi_change {
my $exp = shift;
my $sev;
return if !$opt_check_kabi;
$sev = 8;
for my $rule (@severities) {
if ($exp->{mod} =~ $rule->[0]) {
$sev = $rule->[1];
last;
}
}
if (exists($usedsyms{$exp->{sym}})) {
$sev += 16;
} elsif (exists($commonsyms{$exp->{sym}})) {
$sev += 8;
}
print STDERR "KABI: symbol $exp->{sym}.$exp->{crc} (badness $sev): @_\n";
$kabi_badness = $sev if ($sev > $kabi_badness);
}
# check if all symbols from $old symsetlist are provided by $new symsetlist,
# add compatible symsets to $new
# $pulled_exports is a exportlist of modules, that are pulled as dependencies
# of this package (thus also "provided" by this package).
sub preserve_symsets {
my ($new, $old, $pulled_exports) = @_;
my (%symcrcs, %pulled_symcrcs, %symsethashes);
for my $set (@$new) {
my $name = $set->[0];
my $exports = $set->[1];
$symsethashes{$name} = hash(format_exports(@$exports));
for my $exp (@$exports) {
$symcrcs{$exp->{sym}} = $exp->{crc};
}
}
for my $exp (@$pulled_exports) {
$pulled_symcrcs{$exp->{sym}} = $exp->{crc};
}
for my $set (@$old) {
my $name = $set->[0];
my $exports = $set->[1];
my $hash = hash(format_exports(@$exports));
if (exists($symsethashes{$name}) && $symsethashes{$name} eq $hash) {
next;
}
my $compatible = 1;
my $oursyms = 0;
for my $exp (@$exports) {
my $crc;
if (exists($symcrcs{$exp->{sym}})) {
$oursyms++;
$crc = $symcrcs{$exp->{sym}};
} elsif (exists($pulled_symcrcs{$exp->{sym}})) {
$crc = $pulled_symcrcs{$exp->{sym}};
} else {
kabi_change($exp, "missing");
$compatible = 0;
next;
}
if ($crc ne $exp->{crc}) {
kabi_change($exp, "crc changed to $crc\n");
$compatible = 0;
}
}
if ($compatible) {
if ($oursyms == 0) {
# this symset is fully provided by a package we require,
# so do not duplicate it in our symsets
next;
}
print STDERR "KABI: symset $name.$hash preserved\n"
if $opt_verbose && $opt_check_kabi;
push(@$new, $set);
} else {
print STDERR "KABI: symset $name.$hash NOT preserved\n"
if $opt_check_kabi;
}
}
}
main();
# vim: sw=4:et:sts=4