Summary: The Linux kernel (the core of the Linux operating system) # What parts do we want to build? We must build at least one kernel. # These are the kernels that are built IF the architecture allows it. %define buildup 0 %define buildsmp 1 # Whether to apply the Xen patches, leave this enabled. %define includexen 0 # Whether to build the Xen kernels, disable if you want. %define buildxen 0 %define builddoc 0 %define buildkdump 0 # Versions of various parts # # Polite request for people who spin their own kernel rpms: # please modify the "release" field in a way that identifies # that the kernel isn't the stock distribution kernel, for example by # adding some text to the end of the version number. # %define sublevel 24 %define kversion 2.6.%{sublevel} %define rpmversion 2.6.%{sublevel} #%define release %(R="$Revision: 1.2187 $"; RR="${R##: }"; echo ${RR%%?})_FC5 %define release 7UL1 %define signmodules 0 %define xenhv_cset 11061 %define make_target bzImage %define kernel_image x86 %define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE} # groups of related archs %define all_x86 i586 i686 # Override generic defaults with per-arch defaults %ifarch noarch %define builddoc 1 %define buildup 0 %define all_arch_configs $RPM_SOURCE_DIR/kernel-%{kversion}-*.config %endif # Xen and kdump only build on i686 and x86_64 ... %ifnarch i686 x86_64 %define buildxen 0 %define buildkdump 0 %endif %ifarch ppc64 %define buildkdump 1 %endif # Second, per-architecture exclusions (ifarch) %ifarch %{all_x86} %define all_arch_configs $RPM_SOURCE_DIR/kernel-%{kversion}-i?86*.config %define image_install_path boot %define signmodules 0 %endif %ifarch i686 %define buildsmp 1 %endif %ifarch x86_64 %define buildup 0 %define buildsmp 1 %define all_arch_configs $RPM_SOURCE_DIR/kernel-%{kversion}-x86_64*.config %define image_install_path boot %define signmodules 0 %endif %ifarch ia64 %define all_arch_configs $RPM_SOURCE_DIR/kernel-%{kversion}-ia64.config %define image_install_path boot/efi/EFI/redhat %define signmodules 0 %define make_target compressed %define kernel_image vmlinux.gz %endif # # Three sets of minimum package version requirements in the form of Conflicts: # to versions below the minimum # # # First the general kernel 2.6 required versions as per # Documentation/Changes # %define kernel_dot_org_conflicts ppp < 2.4.2-6, isdn4k-utils < 3.2-18, nfs-utils < 1.0.6-70, e2fsprogs < 1.35-12, util-linux < 2.12, jfsutils < 1.1.7-2, reiserfs-utils < 3.6.19-2, xfsprogs < 2.6.13-1, procps < 3.2.3-8.4, oprofile < 0.8.1-23 # # Then a series of requirements that are distribution specific, either # because we add patches for something, or the older versions have # problems with the newer kernel or lack certain things that make # integration in the distro harder than needed. # %define package_conflicts kudzu < 1.1.95.15, initscripts < 7.23, udev < 039-10, iptables < 1.2.11-3.1, ipw2200-firmware < 2.4, selinux-policy-targeted < 1.17.30-2.140 # # The ld.so.conf.d file we install uses syntax older ldconfig's don't grok. # %define xen_conflicts glibc < 2.3.5-1, xen < 3.0.1 # # Packages that need to be installed before the kernel is, because the %post # scripts use them. # %define kernel_prereq fileutils, module-init-tools, initscripts >= 7.93.25, mkinitrd >= 4.2.1.8-1 Name: kernel Group: System Environment/Kernel License: GPLv2 Version: %{rpmversion} Release: %{release} ExclusiveArch: noarch %{all_x86} x86_64 ppc ppc64 ia64 ExclusiveOS: Linux Provides: kernel = %{version} Provides: kernel-drm = 4.3.0 Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release} Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function # KMP - We need this for the moment #AutoReqProv: no AutoReqProv: yes # # List the packages used during the kernel build # BuildPreReq: module-init-tools, patch >= 2.5.4, bash >= 2.03, sh-utils, tar BuildPreReq: bzip2, findutils, gzip, m4, perl, make >= 3.78, gnupg, diffutils BuildRequires: gcc >= 3.4.2, binutils >= 2.12, redhat-rpm-config BuildConflicts: rhbuildsys(DiskFree) < 500Mb Source0: linux-%{kversion}.tar.bz2 #Source1: xen-%{xen_hv_cset}.tar.bz2 Source2: Config.mk #a Source10: COPYING.modules #a Source11: genkey Source20: kernel-%{kversion}-i586.config Source21: kernel-%{kversion}-i586-smp.config Source22: kernel-%{kversion}-i686.config Source23: kernel-%{kversion}-i686-smp.config Source24: kernel-%{kversion}-i686-kdump.config Source25: kernel-%{kversion}-x86_64.config Source26: kernel-%{kversion}-x86_64-kdump.config Source27: kernel-%{kversion}-x86_64-smp.config #a Source34: kernel-%{kversion}-ia64.config #a Source35: kernel-%{kversion}-i686-xen0.config #a Source36: kernel-%{kversion}-i686-xenU.config #a Source37: kernel-%{kversion}-i686-xen.config #a Source38: kernel-%{kversion}-x86_64-xen0.config #a Source49: kernel-%{kversion}-x86_64-xenU.config #a Source40: kernel-%{kversion}-x86_64-xen.config Source101: ethp_z8e.dat.new Source102: eth_z8e.dat.new Source104: rss_ethp_z8e.dat.new Source105: rss_eth_z8e.dat.new # # Patches 0 through 100 are meant for core subsystem upgrades # # OLGA: hand picked patches from 2.6.24.x releases # patch17 should be applied only if Patch1305 is not applied. patch10: linux-2.6.24.1-splice-missing-user-pointer-access-verificiation.patch patch11: linux-2.6.24.2-splice-fix-user-pointer-access.patch patch12: linux-2.6.24.3-tcp-fix-bug-in-strategy-allowed-congestion-control.patch patch13: linux-2.6.24.3-nfs-fix-potential-file-corruption-issue-when-writing.patch patch14: linux-2.6.24.3-xfs-fix-oops-in-xfs_file_readdir.patch patch15: linux-2.6.24.4-nfsd-fix-oops-on-access-from-high-numbered-ports.patch patch16: linux-2.6.24.4-x86-dont-user-p6_nops.patch patch17: linux-2.6.24.4-e1000e-fix-crc-stripping-inhardware-context-bug.patch patch18: linux-2.6.24.4-tcp-improve-ipv4-established-hash-function.patch patch19: linux-2.6.24.5-locks-fix-possible-infinite-loop.patch patch20: linux-2.6.24.4-tcp-let-skbs-grow-over-page-on-fast-peers.patch patch21: linux-2.6.24.5-tcp-fix-shrinking-windows-with-window-scaling.patch patch22: linux-2.6.24.6-fix-dnotify-close-race.patch patch23: linux-2.6.24.6-increase-max-burst-threshold.patch patch24: linux-2.6.24.6-x86-fix-32b-x86-msi-x-allocation-leakage.patch patch25: linux-2.6.24.7-fix-smp-ordering-hole-in-fcntl_setlk.patch # Incremental upgrades (we started from 2.6.24) Only apply the latest. # They are not really "incremental", .2 includes .1. patch1: patch-2.6.24.1 patch2: patch-2.6.24.2 patch3: patch-2.6.24.3 patch4: patch-2.6.24.4 patch5: patch-2.6.24.5 patch6: patch-2.6.24.6 patch7: patch-2.6.24.7 # Patches 100 through 500 are meant for architecture patches # 200 - 299 x86(-64) # 300 - 399 ppc(64) # 400 - 499 ia64 # 500 - 599 s390(x) # 600 - 699 sparc(64) # 700 - 799 Xen # # Patches 800 through 899 are reserved for bugfixes to the core system # and patches related to how RPMs are build # #a Patch800: linux-2.6.24-build-nonintconfig.patch # Exec-shield. # Module signing infrastructure. # Tux http accelerator. # # Patches 1000 to 5000 are reserved for bugfixes to drivers and filesystems # # SCSI bits. starts at 1100. #a Patch1102: linux-2.6-scsi-advansys-pcitable.patch #a Patch1103: linux-2.6-scsi-noisy-ioctl.patch #a Patch1104: linux-2.6.17-3ware-2.26.04.009.patch Patch1105: linux-2.6.24-arcmsr.patch Patch1106: linux-2.6.24-qla2xxx.patch patch1107: linux-2.6.24-megaraid-sas.patch # NFS bits. starts at 1200. Patch1200: linux-2.6.24-nfs-callback-fix.patch Patch1201: linux-2.6.24-trond-fix-for-write-buffer.patch Patch1202: linux-2.6.24-nfsd-increase-recv-buffer.patch # NIC driver updates # Intel 10GE NIC patches #Patch1305: linux-2.6.24-e1000e.patch Patch1305: linux-2.6.24.7-e1000e.patch Patch1306: linux-2.6.24-e1000.patch Patch1307: linux-2.6.24-ixbge.patch # S2io # Myricom Patch1309: linux-2.6.24-myri10ge-1.4.2.patch # Chelsio Patch1310: linux-2.6.24-cxgb3.patch # Broadcom tg3 & bnx2 Patch1311: linux-2.6.24-tg3.patch Patch1312: linux-2.6.24-bnx2.patch # Squashfs # Misc bits. starts at 1600. Patch1600: linux-2.6-optimise-spinlock-debug.patch Patch1601: linux-2.6-panic-on-oops.patch Patch1602: linux-2.6-debug-must_check.patch Patch1603: linux-2.6-debug-no-quiet.patch Patch1604: linux-2.6-debug-slab-backtrace.patch Patch1605: linux-2.6-scsi-allow-cat-proc-scsi-to-work.patch Patch1606: linux-2.6.24-mptctl-remove-printk.patch # SELinux/audit patches. # The vmsplice exploit for kernels 2.6.17-24 (See CVE-2008-0600) # Warn about usage of various obsolete functionality that may go away. #a Patch1900: linux-2.6-obsolete-oss-warning.patch # no external module should use these symbols. #a Patch1910: linux-2.6-unexport-symbols.patch # VM bits. # Tweak some defaults. # SATA Bits # ACPI bits # Web100 patches Patch2801: web100-2.6.24-2.5.19-200802211940.patch # FAST Patches #Patch3001: FAST-26177-os.dep.patch #Patch3002: FAST-26177-os.ind.patch #Patch3003: FAST-hang-bug-fix-1.2.patch # FAST patches for Web100 #a Patch3004: 262010-web100-os.dep.patch #a Patch3005: 262010-web100-os.ind.patch # Not really FAST but turns of FASTRETRANS_DEBUB in tcp.h #a Patch3006: linux-2.6.20-fastretransoff.patch # OpenIPMI patches # FNAL patches for possible performance bottleneck and interactivity vs fairness #a Patch3201: linux-2.6.20-FNAL-perfbottleneck.patch #a Patch3202: linux-2.6.20-FNAL-intervsfair.patch # # 10000 to 20000 is for stuff that has to come last due to the # amount of drivers they touch. But only these should go here. # Not patches you're too lazy for to put in the proper place. # # Little obvious 1-2 liners that fix silly bugs. # Do not add anything non-trivial here. #a Patch10001: linux-2.6-random-patches.patch # Xen hypervisor patches #a Patch20000: xen-build-with-O2.patch # END OF PATCH DEFINITIONS BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root %ifarch x86_64 Obsoletes: kernel-smp %endif %description The kernel package contains the Linux kernel (vmlinuz), the core of any Linux operating system. The kernel handles the basic functions of the operating system: memory allocation, process allocation, device input and output, etc. %package devel Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release} Prereq: /usr/bin/find %description devel This package provides kernel headers and makefiles sufficient to build modules against the kernel package. %package doc Summary: Various documentation bits found in the kernel source. Group: Documentation %description doc This package contains documentation files from the kernel source. Various bits of information about the Linux kernel and the device drivers shipped with it are documented in these files. You'll want to install this package if you need a reference to the options that can be passed to Linux kernel modules at load time. %package smp Summary: The Linux kernel compiled for SMP machines. Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-drm = 4.3.0 Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{release}smp Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} # upto and including kernel 2.4.9 rpms, the 4Gb+ kernel was called kernel-enterprise # now that the smp kernel offers this capability, obsolete the old kernel Obsoletes: kernel-enterprise < 2.4.10 # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function AutoReqProv: no %description smp This package includes a SMP version of the Linux kernel. It is required only on machines with two or more CPUs as well as machines with hyperthreading technology. Install the kernel-smp package if your machine uses two or more CPUs. %package smp-devel Summary: Development package for building kernel modules to match the SMP kernel. Group: System Environment/Kernel Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{release} Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}smp Provides: kernel-devel = %{rpmversion}-%{release}smp AutoReqProv: no Prereq: /usr/bin/find %description smp-devel This package provides kernel headers and makefiles sufficient to build modules against the SMP kernel package. %package xen0 Summary: The Linux kernel compiled for Xen guest0 VM operations Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xen0 Prereq: %{kernel_prereq} Requires: xen Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} Conflicts: %{xen_conflicts} # the hypervisor kernel needs a newer mkinitrd than everything else right now Conflicts: mkinitrd <= 4.2.0 # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function AutoReqProv: no %description xen0 This package includes a version of the Linux kernel which runs in Xen's guest0 VM and provides device services to the unprivileged guests. Install this package in your Xen guest0 environment. %package xen0-devel Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no Provides: kernel-xen0-devel-%{_target_cpu} = %{rpmversion}-%{release} Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xen0 Provides: kernel-devel = %{rpmversion}-%{release}xen0 Prereq: /usr/bin/find %description xen0-devel This package provides kernel headers and makefiles sufficient to build modules against the kernel package. %package xen Summary: The Linux kernel compiled for Xen VM operations with PAE support Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xen Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} Conflicts: %{xen_conflicts} # the xen kernel needs a newer mkinitrd than everything else right now Conflicts: mkinitrd <= 4.2.0 # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function AutoReqProv: no %description xen This package includes a version of the Linux kernel which runs in Xen's VM with PAE support and provides device services to the unprivileged guests. Install this package in your Xen guest0 environment. %package xen-devel Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no Provides: kernel-xen-devel-%{_target_cpu} = %{rpmversion}-%{release} Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xen Provides: kernel-devel = %{rpmversion}-%{release}xen Prereq: /usr/bin/find %description xen-devel This package provides kernel headers and makefiles sufficient to build modules against the kernel package. %package xenU Summary: The Linux kernel compiled for unprivileged Xen guest VMs Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xenU Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} Conflicts: %{xen_conflicts} # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function AutoReqProv: no %description xenU This package includes a version of the Linux kernel which runs in Xen unprivileged guest VMs. This should be installed both inside the unprivileged guest (for the modules) and in the guest0 domain. %package xenU-devel Summary: Development package for building kernel modules to match the kernel. Group: System Environment/Kernel AutoReqProv: no Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{release} Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xenU Provides: kernel-devel = %{rpmversion}-%{release}xenU Prereq: /usr/bin/find %description xenU-devel This package provides kernel headers and makefiles sufficient to build modules against the kernel package. %package kdump Summary: A minimal Linux kernel compiled for kernel crash dumps. Group: System Environment/Kernel Provides: kernel = %{version} Provides: kernel-drm = 4.3.0 Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}kdump Prereq: %{kernel_prereq} Conflicts: %{kernel_dot_org_conflicts} Conflicts: %{package_conflicts} # We can't let RPM do the dependencies automatic because it'll then pick up # a correct but undesirable perl dependency from the module headers which # isn't required for the kernel proper to function AutoReqProv: no %description kdump This package includes a kdump version of the Linux kernel. It is required only on machines which will use the kexec-base kernel crash dump mechanism. %package kdump-devel Summary: Development package for building kernel modules to match the kdump kernel. Group: System Environment/Kernel Provides: kernel-kdump-devel-%{_target_cpu} = %{rpmversion}-%{release} Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}kdump Provides: kernel-devel = %{rpmversion}-%{release}kdump AutoReqProv: no Prereq: /usr/bin/find %description kdump-devel This package provides kernel headers and makefiles sufficient to build modules against the kdump kernel package. %prep # First we unpack the kernel tarball. # If this isn't the first make prep, we use links to the existing clean tarball # which speeds things up quite a bit. if [ ! -d kernel-%{kversion}/vanilla ]; then # Ok, first time we do a make prep. rm -f pax_global_header %setup -q -n %{name}-%{version} -c mv linux-%{kversion} vanilla else # We already have a vanilla dir. cd kernel-%{kversion} if [ -d linux-%{kversion}.%{_target_cpu} ]; then # Just in case we ctrl-c'd a prep already rm -rf deleteme # Move away the stale away, and delete in background. mv linux-%{kversion}.%{_target_cpu} deleteme rm -rf deleteme & fi fi cp -rl vanilla linux-%{kversion}.%{_target_cpu} # Now do the same procedure with the Xen tarball. %if %{includexen} if [ -d xen ]; then # Just in case we ctrl-c'd a prep already rm -rf deleteme2 # Move away the stale away, and delete in background. mv xen deleteme2 rm -rf deleteme2 & fi if [ ! -d xen-%{xen_hv_cset} ]; then # Ok, first time we do a make prep %setup -D -T -q -n %{name}-%{version} -a1 cp %{SOURCE2} . mv xen xen-%{xen_hv_cset} fi cp -rl xen-%{xen_hv_cset} xen # Any necessary hypervisor patches go here #a %patch20000 -p0 %endif cd linux-%{kversion}.%{_target_cpu} # Update to latest upstream. # Incremental patches %patch7 -p1 # OLGA: instead of incremental patches. I'm hand picking patches # %patch10 -p1 # %patch11 -p1 # %patch12 -p1 # %patch13 -p1 # %patch14 -p1 # %patch15 -p1 # %patch16 -p1 doesn't compile # %patch17 -p1 interfers with intel's e1000e patch # %patch18 -p1 # %patch19 -p1 # %patch20 -p1 # %patch21 -p1 # %patch22 -p1 # %patch23 -p1 # %patch24 -p1 # %patch25 -p1 # # Patches 10 through 100 are meant for core subsystem upgrades # # # Patches to back out # # # Architecture patches # # x86(-64) # ppc64 # Xen # %if %{includexen} # # Apply the main xen patch... # #%patch700 -p1 -b .p.xen # # ... and back out all the ia64-specific sections, as they currently prevent # non-xen builds from working. # Now also with tpm # for f in `find drivers/char/tpm arch/ia64/ include/asm-ia64/ include/xen/interface/arch-ia64.h* -type f -name "*.p.xen"` ; do \ g=`dirname $f`/`basename $f .p.xen`; \ mv "$f" "$g"; \ if [ ! -s "$g" ] ; then rm -f "$g" ; fi; \ done # Delete the rest of the backup files, they just confuse the build later find -name "*.p.xen" | xargs rm -f # # Xen includes a patch which moves the vsyscall fixmap into a user-space VA, # freeing user-space from reliance on an absolute fixmap area and so allowing # the fixmap area to become dynamic. # # Execshield already does this, making the fixmap area invisible to the user # and adding a new randomised vdso for it in user VA, so there's no point in # having both: revert the Xen changeset so that execsheild applies cleanly. # #%patch703 -p2 -R #%patch701 -p1 #%patch702 -p1 #%patch704 -p1 #%patch706 -p1 %endif # # Patches 500 through 1000 are reserved for bugfixes to the core system # and patches related to how RPMs are build # # This patch adds a "make nonint_oldconfig" which is non-interactive and # also gives a list of missing options at the end. Useful for automated # builds (as used in the buildsystem). #a %patch800 -p1 # Exec shield # GPG signed kernel modules # Tux # # Patches 1000 to 5000 are reserved for bugfixes to drivers and filesystems # # # SCSI Bits. # # Add a pci table to advansys driver. #%patch1102 -p1 # Silence noisy SCSI ioctl. #%patch1103 -p1 # Patch for 3Ware controller #%patch1104 -p1 # Patch for Areca controller %patch1105 -p1 # Patch for QLA2xxx (with firmware) %patch1106 -p1 # megaraid_sas patch %patch1107 -p1 # # Various upstream NFS/NFSD fixes. %patch1200 -p1 %patch1201 -p1 %patch1202 -p1 # NIC driver fixes. # New PCI ID for sundance driver. #%patch1301 -p1 # add IPW2200_MONITOR config option #%patch1304 -p1 # Add newest Intel drivers # e1000e %patch1305 -p1 # e1000 #%patch1306 -p1 # ixgbe %patch1307 -p1 # Add newest Neterion driver #%patch1306 -p1 # Add newest Myricom driver %patch1309 -p1 # Add newest Chelsio driver patches #a %patch1310 -p1 # Add newest Broadcom drivers (tg3 bnx2) %patch1311 -p1 %patch1312 -p1 # Squashfs # Various SELinux fixes from 2.6.10rc # Misc fixes %patch1600 -p1 %patch1601 -p1 %patch1602 -p1 %patch1603 -p1 %patch1604 -p1 %patch1605 -p1 %patch1606 -p1 # Speed up spinlock debug. #a %patch1770 -p1 # VM related fixes. # Changes to upstream defaults. # Bump up the number of recursive symlinks. #%patch2100 -p1 # Use UTF-8 by default on VFAT. #%patch2101 -p1 # Increase timeout on firmware loader. #%patch2102 -p1 # Change PHYSICAL_START #%patch2103 -p1 # Use unicode VT's by default. #%patch2104 -p1 # Disable split pagetable lock #%patch2105 -p1 # Enable PATA ports on Promise SATA. #%patch2200 -p1 # Silence silly SATA printk. #%patch2201 -p1 # Fix AHCI Suspend. #%patch2202 -p1 # ACPI patches # Patches for Web100 %patch2801 -p1 # Patches for FAST TCP protocol integration (use 3001/3002 OR 3003/3004) #%patch3001 -p1 #%patch3002 -p1 #%patch3003 -p1 # Patches for FAST TCP + Web100 ... Sep 2007, Improved to allow Web100 with minimal impact if off #%patch3003 -p1 #a %patch3004 -p1 #a %patch3005 -p1 #a %patch3006 -p1 # OpenIPMI patches v39 # FNAL patches to tcp behavior #a %patch3201 -p2 #a %patch3202 -p2 # # Patches 5000 to 6000 are reserved for new drivers that are about to # be merged upstream # # # final stuff # # END OF PATCH APPLICATIONS #a cp %{SOURCE10} Documentation/ mkdir configs cp -f %{all_arch_configs} . # now run oldconfig over all the config files for i in *.config do mv $i .config Arch=`head -1 .config | cut -b 3-` #a make ARCH=$Arch nonint_oldconfig > /dev/null make ARCH=$Arch silentoldconfig > /dev/null echo "# $Arch" > configs/$i cat .config >> configs/$i done # make sure the kernel has the sublevel we know it has. This looks weird # but for -pre and -rc versions we need it since we only want to use # the higher version when the final kernel is released. perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{sublevel}/" Makefile perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -prep/" Makefile # get rid of unwanted files resulting from patch fuzz cd .. find . \( -name "*.orig" -o -name "*~" \) -exec rm -f {} \; >/dev/null ### ### build ### %build # # Create gpg keys for signing the modules # #gpg --homedir . --batch --gen-key %{SOURCE11} #gpg --homedir . --export --keyring ./kernel.pub Shawn > extract.pub #make linux-%{kversion}.%{_target_cpu}/scripts/bin2c #linux-%{kversion}.%{_target_cpu}/scripts/bin2c ksign_def_public_key __initdata < extract.pub > linux-%{kversion}.%{_target_cpu}/crypto/signature/key.h BuildKernel() { MakeTarget=$1 KernelImage=$2 Flavour=$3 # Pick the right config file for the kernel we're building if [ -n "$Flavour" ] ; then Config=kernel-%{kversion}-%{_target_cpu}-$Flavour.config DevelDir=/usr/src/kernels/%{KVERREL}-$Flavour-%{_target_cpu} DevelLink=/usr/src/kernels/%{KVERREL}$Flavour-%{_target_cpu} else Config=kernel-%{kversion}-%{_target_cpu}.config DevelDir=/usr/src/kernels/%{KVERREL}-%{_target_cpu} DevelLink= fi KernelVer=%{version}-%{release}$Flavour echo BUILDING A KERNEL FOR $Flavour %{_target_cpu}... # make sure EXTRAVERSION says what we want it to say perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}$Flavour/" Makefile # and now to start the build process make -s mrproper cp configs/$Config .config Arch=`head -1 .config | cut -b 3-` echo USING ARCH=$Arch if [ "$KernelImage" == "x86" ]; then KernelImage=arch/$Arch/boot/bzImage fi #a make -s ARCH=$Arch nonint_oldconfig > /dev/null make -s ARCH=$Arch > /dev/null make -s ARCH=$Arch %{?_smp_mflags} $MakeTarget make -s ARCH=$Arch %{?_smp_mflags} modules || exit 1 # Start installing the results %if "%{_enable_debug_packages}" == "1" mkdir -p $RPM_BUILD_ROOT/usr/lib/debug/boot %endif mkdir -p $RPM_BUILD_ROOT/%{image_install_path} install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer cp $KernelImage $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz-$KernelVer if [ -f arch/$Arch/boot/zImage.stub ]; then cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || : fi if [ "$Flavour" == "kdump" ]; then cp vmlinux $RPM_BUILD_ROOT/%{image_install_path}/vmlinux-$KernelVer rm -f $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz-$KernelVer fi mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer make -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer # And save the headers/makefiles etc for building modules against # # This all looks scary, but the end result is supposed to be: # * all arch relevant include/ files # * all Makefile/Kconfig files # * all script/ files rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source) # dirs for additional modules per module-init-tools, kbuild/modules.txt mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates # first copy everything cp --parents `find -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build # then drop all but the needed Makefiles/Kconfig files rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include cp arch/%{_arch}/kernel/asm-offsets.s $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/kernel || : cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build cp include/config/kernel.release $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.kernelrelease cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build if [ -d arch/%{_arch}/scripts ]; then cp -a arch/%{_arch}/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || : fi if [ -f arch/%{_arch}/*lds ]; then cp -a arch/%{_arch}/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || : fi rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include cd include cp -a acpi config keys linux math-emu media mtd net pcmcia rdma rxrpc scsi sound video asm asm-generic $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include cp -a `readlink asm` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include if [ "$Arch" = "x86_64" ]; then #a cp -a asm-i386 $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include cp -a asm-x86 $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include fi # While arch/powerpc/include/asm is still a symlink to the old # include/asm-ppc{64,} directory, include that in kernel-devel too. if [ "$Arch" = "powerpc" -a -r ../arch/powerpc/include/asm ]; then cp -a `readlink ../arch/powerpc/include/asm` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/$Arch/include pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/$Arch/include ln -sf ../../../include/asm-ppc* asm popd fi %if %{includexen} cp -a xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include %endif # Make sure the Makefile and version.h have a matching timestamp so that # external modules can be built touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/linux/version.h touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/linux/autoconf.h cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf cd .. # # save the vmlinux file for kernel debugging into the kernel-debuginfo rpm # %if "%{_enable_debug_packages}" == "1" mkdir -p $RPM_BUILD_ROOT/usr/lib/debug/lib/modules/$KernelVer cp vmlinux $RPM_BUILD_ROOT/usr/lib/debug/lib/modules/$KernelVer %endif find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames # gpg sign the modules %if %{signmodules} gcc -o scripts/modsign/mod-extract scripts/modsign/mod-extract.c -Wall KEYFLAGS="--no-default-keyring --homedir .." KEYFLAGS="$KEYFLAGS --secret-keyring ../kernel.sec" KEYFLAGS="$KEYFLAGS --keyring ../kernel.pub" export KEYFLAGS for i in `cat modnames` do sh ./scripts/modsign/modsign.sh $i Shawn mv -f $i.signed $i done unset KEYFLAGS %endif # mark modules executable so that strip-to-file can strip them cat modnames | xargs chmod u+x # detect missing or incorrect license tags for i in `cat modnames` do echo -n "$i " /sbin/modinfo -l $i >> modinfo done cat modinfo |\ grep -v "^GPL" | grep -v "^Dual BSD/GPL" |\ grep -v "^Dual MPL/GPL" |\ grep -v "^GPL and additional rights" |\ grep -v "^GPL v2" && exit 1 rm -f modinfo rm -f modnames # remove files that will be auto generated by depmod at rpm -i time rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.* # Move the devel headers out of the root file system mkdir -p $RPM_BUILD_ROOT/usr/src/kernels mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir ln -sf ../../..$DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build [ -z "$DevelLink" ] || ln -sf `basename $DevelDir` $RPM_BUILD_ROOT/$DevelLink } ### # DO it... ### # prepare directories rm -rf $RPM_BUILD_ROOT mkdir -p $RPM_BUILD_ROOT/boot %if %{includexen} %if %{buildxen} cd xen mkdir -p $RPM_BUILD_ROOT/%{image_install_path} # FixMe: Juan Quintela (when no PAE is not needed anymore) make debug=y verbose=y crash_debug=y pae=y install -m 644 xen.gz $RPM_BUILD_ROOT/boot/xen.gz-%{KVERREL}-PAE install -m 755 xen-syms $RPM_BUILD_ROOT/boot/xen-syms-%{KVERREL}-PAE make clean make debug=y verbose=y crash_debug=y install -m 644 xen.gz $RPM_BUILD_ROOT/boot/xen.gz-%{KVERREL} install -m 755 xen-syms $RPM_BUILD_ROOT/boot/xen-syms-%{KVERREL} cd .. %endif %endif cd linux-%{kversion}.%{_target_cpu} %if %{buildup} BuildKernel %make_target %kernel_image %endif %if %{buildsmp} BuildKernel %make_target %kernel_image smp %endif %if %{includexen} %if %{buildxen} BuildKernel vmlinuz vmlinuz xen BuildKernel vmlinuz vmlinuz xen0 BuildKernel vmlinuz vmlinuz xenU %endif %endif %if %{buildkdump} BuildKernel %make_target %kernel_image kdump %endif ### ### install ### %install cd linux-%{kversion}.%{_target_cpu} %if %{includexen} %if %{buildxen} mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d rm -f $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf <<\EOF # This directive teaches ldconfig to search in nosegneg subdirectories # and cache the DSOs there with extra bit 0 set in their hwcap match # fields. In Xen guest kernels, the vDSO tells the dynamic linker to # search in nosegneg subdirectories and to match this extra hwcap bit # in the ld.so.cache file. hwcap 0 nosegneg EOF chmod 444 $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf %endif %endif %if %{builddoc} mkdir -p $RPM_BUILD_ROOT/usr/share/doc/kernel-doc-%{kversion}/Documentation # sometimes non-world-readable files sneak into the kernel source tree chmod -R a+r * # copy the source over tar cf - Documentation | tar xf - -C $RPM_BUILD_ROOT/usr/share/doc/kernel-doc-%{kversion} %endif # Add firmware for Myricom here # %if %{buildsmp} %{buildup} %{__mkdir_p} %{buildroot}/lib/firmware %{__install} -p -m 0644 %{SOURCE101} %{buildroot}/lib/firmware/myri10ge_ethp_z8e.dat.new %{__install} -p -m 0644 %{SOURCE102} %{buildroot}/lib/firmware/myri10ge_eth_z8e.dat.new %{__install} -p -m 0644 %{SOURCE104} %{buildroot}/lib/firmware/myri10ge_rss_ethp_z8e.dat.new %{__install} -p -m 0644 %{SOURCE105} %{buildroot}/lib/firmware/myri10ge_rss_eth_z8e.dat.new # %endif ### ### clean ### %clean rm -rf $RPM_BUILD_ROOT ### ### scripts ### # load the loop module for upgrades...in case the old modules get removed we have # loopback in the kernel so that mkinitrd will work. %pre /sbin/modprobe loop 2> /dev/null > /dev/null || : exit 0 %pre smp /sbin/modprobe loop 2> /dev/null > /dev/null || : exit 0 %post if [ `uname -i` == "x86_64" ]; then if [ -f /etc/sysconfig/kernel ]; then /bin/sed -i -e 's/^DEFAULTKERNEL=kernel-smp$/DEFAULTKERNEL=kernel/' /etc/sysconfig/kernel fi fi [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release} /sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install %{KVERREL} %post devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %post smp [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}smp /sbin/new-kernel-pkg --package kernel-smp --mkinitrd --depmod --install %{KVERREL}smp /bin/mv /lib/firmware/myri10ge_ethp_z8e.dat.new /lib/firmware/myri10ge_ethp_z8e.dat /bin/mv /lib/firmware/myri10ge_eth_z8e.dat.new /lib/firmware/myri10ge_eth_z8e.dat /bin/mv /lib/firmware/myri10ge_rss_ethp_z8e.dat.new /lib/firmware/myri10ge_rss_ethp_z8e.dat /bin/mv /lib/firmware/myri10ge_rss_eth_z8e.dat.new /lib/firmware/myri10ge_rss_eth_z8e.dat %post smp-devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-smp-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %post xen0 [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}-xen0 /sbin/new-kernel-pkg --package kernel-xen0 --mkinitrd --depmod --install --multiboot=/boot/xen.gz-%{KVERREL} %{KVERREL}xen0 [ ! -x /sbin/ldconfig ] || /sbin/ldconfig -X %post xen0-devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-xen0-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %post xenU [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}-xenU /sbin/new-kernel-pkg --package kernel-xenU --mkinitrd --depmod --install %{KVERREL}xenU [ ! -x /sbin/ldconfig ] || /sbin/ldconfig -X %post xenU-devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-xenU-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %post xen [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}-xen if [ -e /proc/xen/xsd_kva -o ! -d /proc/xen ]; then /sbin/new-kernel-pkg --package kernel-xen --mkinitrd --depmod --install --multiboot=/boot/xen.gz-%{KVERREL}-PAE %{KVERREL}xen else /sbin/new-kernel-pkg --package kernel-xen --mkinitrd --depmod --install %{KVERREL}xen fi [ ! -x /sbin/ldconfig ] || /sbin/ldconfig -X %post xen-devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-xen-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %post kdump [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}-kdump /sbin/new-kernel-pkg --package kernel-kdump --mkinitrd --depmod --install %{KVERREL}kdump %post kdump-devel [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then pushd /usr/src/kernels/%{KVERREL}-kdump-%{_target_cpu} > /dev/null /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done popd > /dev/null fi %preun /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL} %preun smp /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}smp %preun kdump /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}kdump %preun xen0 /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}xen0 %preun xenU /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}xenU %preun xen /sbin/modprobe loop 2> /dev/null > /dev/null || : /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}xen ### ### file lists ### %if %{buildup} %files %defattr(-,root,root) /%{image_install_path}/vmlinuz-%{KVERREL} /boot/System.map-%{KVERREL} /boot/config-%{KVERREL} %dir /lib/modules/%{KVERREL} /lib/modules/%{KVERREL}/kernel /lib/modules/%{KVERREL}/build /lib/modules/%{KVERREL}/source /lib/modules/%{KVERREL}/extra /lib/modules/%{KVERREL}/updates %defattr(-,root, root, 0755) /lib/firmware/myri10ge_ethp_z8e.dat.new /lib/firmware/myri10ge_eth_z8e.dat.new /lib/firmware/myri10ge_rss_ethp_z8e.dat.new /lib/firmware/myri10ge_rss_eth_z8e.dat.new %files devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-%{_target_cpu} %endif %if %{buildsmp} %files smp %defattr(-,root,root) /%{image_install_path}/vmlinuz-%{KVERREL}smp /boot/System.map-%{KVERREL}smp /boot/config-%{KVERREL}smp %dir /lib/modules/%{KVERREL}smp /lib/modules/%{KVERREL}smp/kernel /lib/modules/%{KVERREL}smp/build /lib/modules/%{KVERREL}smp/source /lib/modules/%{KVERREL}smp/extra /lib/modules/%{KVERREL}smp/updates %defattr(-,root, root, 0755) /lib/firmware/myri10ge_ethp_z8e.dat.new /lib/firmware/myri10ge_eth_z8e.dat.new /lib/firmware/myri10ge_rss_ethp_z8e.dat.new /lib/firmware/myri10ge_rss_eth_z8e.dat.new %files smp-devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-smp-%{_target_cpu} /usr/src/kernels/%{KVERREL}smp-%{_target_cpu} %endif %if %{includexen} %if %{buildxen} %files xen0 %defattr(-,root,root) /%{image_install_path}/vmlinuz-%{KVERREL}xen0 /boot/System.map-%{KVERREL}xen0 /boot/config-%{KVERREL}xen0 /boot/xen.gz-%{KVERREL} /boot/xen-syms-%{KVERREL} %dir /lib/modules/%{KVERREL}xen0 /lib/modules/%{KVERREL}xen0/kernel %verify(not mtime) /lib/modules/%{KVERREL}xen0/build /lib/modules/%{KVERREL}xen0/source /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf /lib/modules/%{KVERREL}xen0/extra /lib/modules/%{KVERREL}xen0/updates %defattr(-,root, root, 0755) /lib/firmware/myri10ge_ethp_z8e.dat /lib/firmware/myri10ge_eth_z8e.dat #/lib/firmware/myri10ge_ethr_z8e.dat /lib/firmware/myri10ge_rss_ethp_z8e.dat /lib/firmware/myri10ge_rss_eth_z8e.dat %files xen0-devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-xen0-%{_target_cpu} /usr/src/kernels/%{KVERREL}xen0-%{_target_cpu} %files xenU %defattr(-,root,root) /%{image_install_path}/vmlinuz-%{KVERREL}xenU /boot/System.map-%{KVERREL}xenU /boot/config-%{KVERREL}xenU %dir /lib/modules/%{KVERREL}xenU /lib/modules/%{KVERREL}xenU/kernel %verify(not mtime) /lib/modules/%{KVERREL}xenU/build /lib/modules/%{KVERREL}xenU/source /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf /lib/modules/%{KVERREL}xenU/extra /lib/modules/%{KVERREL}xenU/updates %defattr(-,root, root, 0755) /lib/firmware/myri10ge_ethp_z8e.dat /lib/firmware/myri10ge_eth_z8e.dat #/lib/firmware/myri10ge_ethr_z8e.dat /lib/firmware/myri10ge_rss_ethp_z8e.dat /lib/firmware/myri10ge_rss_eth_z8e.dat %files xenU-devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-xenU-%{_target_cpu} /usr/src/kernels/%{KVERREL}xenU-%{_target_cpu} %files xen %defattr(-,root,root) /%{image_install_path}/vmlinuz-%{KVERREL}xen /boot/System.map-%{KVERREL}xen /boot/config-%{KVERREL}xen /boot/xen.gz-%{KVERREL}-PAE /boot/xen-syms-%{KVERREL}-PAE %dir /lib/modules/%{KVERREL}xen /lib/modules/%{KVERREL}xen/kernel %verify(not mtime) /lib/modules/%{KVERREL}xen/build /lib/modules/%{KVERREL}xen/source /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf /lib/modules/%{KVERREL}xen/extra /lib/modules/%{KVERREL}xen/updates %defattr(-,root, root, 0755) /lib/firmware/myri10ge_ethp_z8e.dat /lib/firmware/myri10ge_eth_z8e.dat #/lib/firmware/myri10ge_ethr_z8e.dat /lib/firmware/myri10ge_rss_ethp_z8e.dat /lib/firmware/myri10ge_rss_eth_z8e.dat %files xen-devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-xen-%{_target_cpu} /usr/src/kernels/%{KVERREL}xen-%{_target_cpu} %endif %endif %if %{buildkdump} %files kdump %defattr(-,root,root) /%{image_install_path}/vmlinux-%{KVERREL}kdump /boot/System.map-%{KVERREL}kdump /boot/config-%{KVERREL}kdump %dir /lib/modules/%{KVERREL}kdump /lib/modules/%{KVERREL}kdump/kernel /lib/modules/%{KVERREL}kdump/build /lib/modules/%{KVERREL}kdump/source /lib/modules/%{KVERREL}kdump/extra /lib/modules/%{KVERREL}kdump/updates %files kdump-devel %defattr(-,root,root) %verify(not mtime) /usr/src/kernels/%{KVERREL}-kdump-%{_target_cpu} /usr/src/kernels/%{KVERREL}kdump-%{_target_cpu} %endif # only some architecture builds need kernel-doc %if %{builddoc} %files doc %defattr(-,root,root) %{_datadir}/doc/kernel-doc-%{kversion}/Documentation/* %dir %{_datadir}/doc/kernel-doc-%{kversion}/Documentation %dir %{_datadir}/doc/kernel-doc-%{kversion} %endif %changelog * Fri Jan 18 2008 root - [2.6.20-20UL4smp] - Version UL4 Added newest Myricom drivers (1.4.0) and firmware (1.4.29), turned off FASTRETRANS_DEBUG in tcp.h, don't compile Web100 for x86_64 smp. * Sun Nov 11 2007 root - 2.6.%{sublevel}-%(R="$Revision: 1.2187 $"; RR="${R##: }"; echo ${RR%%?})_FC5 - Version UL3 adds updated myricom firmware and newer S2IO driver * Mon Sep 11 2006 Dave Jones [2.6.17-1.2187_FC5] - Add quirk for Samsung mp3 player. (#198128) * Sun Sep 10 2006 Dave Jones - Fix up mismerge in USB storage driver. * Sat Sep 9 2006 Dave Jones - 2.6.17.13 * Fri Sep 8 2006 Dave Jones - 2.6.17.12 * Thu Aug 24 2006 Jarod Wilson - update to 2.6.17.11 * Tue Aug 22 2006 Bill Nottingham - update to 2.6.17.10 * Tue Aug 15 2006 Juan Quintela - linux-2.6-xen update * linux-2.6.17-xen cset changeset: 29033:e6adb54afb96 * linux-2.6-xen cset 22813:80c2ccf5c330 - s/xen_version/xen_hv_cset/ as Fedora. - update xen hv to cset 11061. * Mon Aug 7 2006 Mike Christie - Drop iscsi update patch. * Mon Aug 7 2006 Dave Jones - 2.6.17.8 * Fri Aug 4 2006 Dave Jones - Fix split lock patch for 64bit. * Fri Aug 4 2006 Dave Jones [2.6.17-1.2171_FC5] - 2.6.17.8rc1 * Wed Aug 2 2006 Dave Jones - Readd patch to allow 460800 baud on 16C950 UARTs * Sat Jul 29 2006 Dave Jones - Silence noisy SCSI ioctl. (#200638) * Fri Jul 28 2006 Dave Jones - 2.6.17.7 * Thu Jul 27 2006 Rik van Riel - reduce hypervisor stack use with -O2, this really fixes bug (#198932) * Tue Jul 25 2006 Rik van Riel - disable debug=y hypervisor build option because of stack overflow (#198932) * Tue Jul 25 2006 Dave Jones - Enable serio_raw (#199387) * Sun Jul 16 2006 Dave Jones - Support up to 4GB in the 586 kernel again. * Sat Jul 16 2006 Dave Jones - 2.6.17.6 * Fri Jul 14 2006 Dave Jones - Reenable SMC NIC driver. * Tue Jul 11 2006 Dave Jones - 2.6.17.4 - Disable split pagetable lock * Sat Jul 8 2006 Juan Quintela - enable CONFIG_CRASH on xen kernels. - enable CONFIG_PCIDEV_BACKEND on xen kernels. - make BLKDEV_FRONTEND a module on xen kernels. - rebase with linux-2.6-xen-fedora 28918. - Update to xen-unstable HV cset 10508. - xen: credit scheduler is the default now. * Wed Jul 5 2006 Dave Jones - Get rid of stack backtrace on panic, which in most cases actually caused a loss of info instead of a gain. * Tue Jul 4 2006 Juan Quintela - new merge with xen upstream. - xen kernel don't require xen userland. - new xen kernel (same as rawhide one) with PAE support. - removed xen0-PAE & xenU-PAE (see xen kernel). * Fri Jun 30 2006 Dave Jones - 2.6.17.3 - 2.6.17.2 - Fix the ALSA list_add bug. * Mon Jun 26 2006 Dave Jones - Enable fake PCI hotplug driver. (#190437) - Enable gameport/joystick on i586 builds. (#196581) * Sat Jun 24 2006 Dave Jones - Enable profiling for 586 kernels. * Fri Jun 23 2006 Dave Jones - Make 'quiet' work again. * Tue Jun 20 2006 Dave Jones [2.6.17-1.2139_FC5] - Rebuild with slab debug off. * Tue Jun 20 2006 Dave Jones [2.6.17-1.2138_FC5] - 2.6.17.1 * Sun Jun 18 2006 Dave Jones - 2.6.17 - Only print info about SMP alternatives on SMP kernels. * Tue Jun 6 2006 Dave Jones [2.6.16-1.2133_FC5] - Add a PPC64 kdump kernel. * Mon Jun 5 2006 Dave Jones [2.6.16-1.2132_FC5] - 2.6.16.20 * Thu Jun 1 2006 Dave Jones - Reenable Xen builds. * Tue May 30 2006 Dave Jones - 2.6.16.19 * Sun May 28 2006 Dave Jones - Fix unresolved symbol. (#193333) * Sat May 27 2006 Dave Jones - Improve list corruption debugging patch. * Fri May 26 2006 Dave Jones - Remove xenU initrd's when kernel is removed. * Fri May 26 2006 Juan Quintela - Remove ARCH=xen reminiscences on spec file * Sun May 21 2006 Dave Jones [2.6.16-1.2123_FC5] - 2.6.16.18 * Sun May 21 2006 Dave Jones [2.6.16-1.2122_FC5] - Remove noisy 'syscall not implemented' message from x86-64. * Sun May 21 2006 David Woodhouse [2.6.16-1.2120_FC5] - Avoid thermal shutdown on some G5 machines. - Make i386 two-minute delay on oops optional (oopsdelay= option) * Sat May 20 2006 Dave Jones [2.6.16-1.2119_FC5] - 2.6.16.17 * Thu May 11 2006 Juan Quintela [2.6.16-1.2118_FC5] - merge with 3.0.2 xen (cset 9668) - add xen hypervisor to match it * Wed May 10 2006 Dave Jones - 2.6.16.16 * Tue May 9 2006 Dave Jones - 2.6.16.15 - Fix exec-shield default, which should fix a few programs that stopped running. * Sat May 6 2006 Dave Jones - Enable ATM in 586 kernels (#190202) * Thu May 4 2006 Dave Jones [2.6.16-1.2111_FC5] - 2.6.16.14 - Revert broken Xen update that sneaked into the last update. * Wed May 3 2006 Dave Jones - disable MSI until 2.6.17. * Tue May 2 2006 Dave Jones [2.6.16-1.2107_FC5] - 2.6.16.13 * Mon May 1 2006 Dave Jones - 2.6.16.12 * Tue Apr 25 2006 David Woodhouse - Use check_legacy_ioport() even on 32-bit PPC kernel * Tue Apr 25 2006 Dave Jones - Enable DVB in the 586 kernel. (#188227) - Fix up SCSI errors with mymusix usb mp3 player (#186187) * Mon Apr 24 2006 Dave Jones - 2.6.16.11 * Wed Apr 19 2006 Dave Jones - Enable PCI MSI. * Wed Apr 19 2006 David Woodhouse [2.6.16-1.2096_FC5] - 2.6.16.9 * Wed Apr 19 2006 David Woodhouse - 2.6.16.8 * Tue Apr 18 2006 Dave Jones - 2.6.16.7 - Add missing %preuninstall for -kdump kernels. (#189100) * Mon Apr 17 2006 Dave Jones - 2.6.16.6 - Disable the SMP alternatives patch for now. - Revive Xen. * Mon Apr 17 2006 David Woodhouse - Add include/{mtd,rdma,keys} directories to kernel-devel package * Sun Apr 16 2006 Dave Jones - 2.6.16.5 * Fri Apr 7 2006 Dave Jones - 2.6.16.2 * Tue Apr 4 2006 Dave Jones - Reenable non-standard serial ports. (#187466) - Reenable snd-es18xx for x86-32 (#187733) * Sun Apr 2 2006 David Woodhouse - Alternative (and optional) disable for R300 DRI. * Fri Mar 31 2006 David Woodhouse - Send standard WEXT events on softmac assoc/disassociation. * Wed Mar 27 2006 Dave Jones - Enable SMP alternatives for x86/x86-64 - Temporarily disable Xen. - Re-add kernel-smp-586 * Tue Mar 26 2006 Dave Jones [2.6.16-1.2080_FC5] - 2.6.16.1 * Mon Mar 25 2006 Dave Jones - Include patches posted for review for inclusion in 2.6.16.1 - Updated new audit msg types. - Make acpi-cpufreq 'sticky' - Fix broken x86-64 32bit vDSO. (#186924) * Fri Mar 24 2006 Dave Jones - Reenable HDLC driver (#186257) - Reenable ISA NE2000 clones. (#136569) * Fri Mar 24 2006 David Woodhouse - Fix lockup when someone takes the bcm43xx device down while it's scanning (#180953) * Wed Mar 22 2006 David Woodhouse - Update the bcm43xx driver to make it work nicely with initscripts and NetworkManager without user intervention. * Tue Mar 21 2006 Dave Jones - Improve spinlock scalability on big machines. - Update exec-shield to Ingo's latest. (Incorporates John Reiser's "map the vDSO intelligently" patch which increases the efficiency of prelinking - #162797). * Mon Mar 20 2006 Dave Jones - ACPI ecdt uid hack. (#185947) * Mon Mar 20 2006 Juan Quintela - fix xen vmx in 64 bits. * Mon Mar 20 2006 Dave Jones - 2.6.16 * Sun Mar 19 2006 Dave Jones - 2.6.16rc6-git12 * Sat Mar 18 2006 Dave Jones - 2.6.16rc6-git10 & git11 * Fri Mar 17 2006 Dave Jones - 2.6.16rc6-git8 & git9 * Thu Mar 16 2006 Dave Jones - 2.6.16rc6-git7 * Wed Mar 15 2006 Dave Jones - 2.6.16rc6-git5 - Unmark 'print_tainted' as a GPL symbol. * Tue Mar 14 2006 Dave Jones - FC5 final kernel - 2.6.16-rc6-git3