[patch 4/7] Remove unneeded %kernel_variant_post args
by Mark McLoughlin
We no longer need the ability to pass arbitrary mkinitrd args
to %kernel_variant_post
Index: devel/kernel.spec
===================================================================
--- devel.orig/kernel.spec 2008-07-23 09:14:54.000000000 +0100
+++ devel.orig/kernel.spec 2008-07-23 09:14:54.000000000 +0100
@@ -1519,7 +1519,7 @@ fi\
%{nil}
# This macro defines a %%posttrans script for a kernel package.
-# %%kernel_variant_posttrans [-v <subpackage>] [-s <s> -r <r>] <mkinitrd-args>
+# %%kernel_variant_posttrans [-v <subpackage>] [-s <s> -r <r>]
# More text can follow to go at the end of this variant's %%post.
#
%define kernel_variant_posttrans(s:r:v:) \
@@ -1529,7 +1529,7 @@ fi\
#
# This macro defines a %%post script for a kernel package and its devel package.
-# %%kernel_variant_post [-v <subpackage>] [-s <s> -r <r>] <mkinitrd-args>
+# %%kernel_variant_post [-v <subpackage>] [-s <s> -r <r>]
# More text can follow to go at the end of this variant's %%post.
#
%define kernel_variant_post(s:r:v:) \
@@ -1541,7 +1541,7 @@ if [ `uname -i` == "x86_64" -o `uname -i
[ -f /etc/sysconfig/kernel ]; then\
/bin/sed -i -e 's/^DEFAULTKERNEL=%{-s*}$/DEFAULTKERNEL=%{-r*}/' /etc/sysconfig/kernel || exit $?\
fi}\
-/sbin/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --mkinitrd --depmod --install %{*} %{KVERREL}%{?-v:.%{-v*}} || exit $?\
+/sbin/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --mkinitrd --depmod --install %{KVERREL}%{?-v:.%{-v*}} || exit $?\
#if [ -x /sbin/weak-modules ]\
#then\
# /sbin/weak-modules --add-kernel %{KVERREL}%{?-v*} || exit $?\
--
15 years, 9 months
[patch 3/7] Kill old xen cruft
by Mark McLoughlin
Kill off most of the remnants of the separate xen package
Gone is the kernel-xen variant and xen.gz
Index: devel/kernel.spec
===================================================================
--- devel.orig/kernel.spec 2008-07-23 14:13:25.000000000 +0100
+++ devel.orig/kernel.spec 2008-07-23 14:13:25.000000000 +0100
@@ -66,8 +66,6 @@ Summary: The Linux kernel
%define with_smp %{?_without_smp: 0} %{?!_without_smp: 1}
# kernel-PAE (only valid for i686)
%define with_pae %{?_without_pae: 0} %{?!_without_pae: 1}
-# kernel-xen
-%define with_xen %{?_without_xen: 0} %{?!_without_xen: 1}
# kernel-kdump
%define with_kdump %{?_without_kdump: 0} %{?!_without_kdump: 1}
# kernel-debug
@@ -94,17 +92,10 @@ Summary: The Linux kernel
%define with_smponly %{?_with_smponly: 1} %{?!_with_smponly: 0}
# Only build the pae kernel (--with paeonly):
%define with_paeonly %{?_with_paeonly: 1} %{?!_with_paeonly: 0}
-# Only build the xen kernel (--with xenonly):
-%define with_xenonly %{?_with_xenonly: 1} %{?!_with_xenonly: 0}
# should we do C=1 builds with sparse
%define with_sparse %{?_with_sparse: 1} %{?!_with_sparse: 0}
-# Whether or not to apply the Xen patches -- leave this enabled
-%define includexen 0
-# Xen doesn't work with current upstream kernel, shut it off
-%define with_xen 0
-
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
# and 0 for rawhide (all kernels are debug kernels).
# See also 'make debug' and 'make release'.
@@ -135,11 +126,6 @@ Summary: The Linux kernel
%define make_target bzImage
-%define xen_hv_cset 11633
-%define xen_flags verbose=y crash_debug=y
-%define xen_target vmlinuz
-%define xen_image vmlinuz
-
%define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}.%{_target_cpu}
%define hdrarch %_target_cpu
@@ -152,8 +138,6 @@ Summary: The Linux kernel
%endif
%if %{nopatches}
-%define includexen 0
-%define with_xen 0
%define with_bootwrapper 0
%define variant -vanilla
%else
@@ -181,7 +165,6 @@ Summary: The Linux kernel
%if %{with_baseonly}
%define with_smp 0
%define with_pae 0
-%define with_xen 0
%define with_kdump 0
%define with_debug 0
%endif
@@ -190,7 +173,6 @@ Summary: The Linux kernel
%if %{with_smponly}
%define with_up 0
%define with_pae 0
-%define with_xen 0
%define with_kdump 0
%define with_debug 0
%endif
@@ -199,16 +181,6 @@ Summary: The Linux kernel
%if %{with_paeonly}
%define with_up 0
%define with_smp 0
-%define with_xen 0
-%define with_kdump 0
-%define with_debug 0
-%endif
-
-# if requested, only build xen kernel
-%if %{with_xenonly}
-%define with_up 0
-%define with_smp 0
-%define with_pae 0
%define with_kdump 0
%define with_debug 0
%endif
@@ -230,11 +202,6 @@ Summary: The Linux kernel
%define with_pae 0
%endif
-# xen only builds on i686, x86_64 and ia64
-%ifnarch i686 x86_64 ia64
-%define with_xen 0
-%endif
-
# only build kernel-kdump on ppc64
# (no relocatable kernel support upstream yet)
%ifnarch ppc64
@@ -281,8 +248,6 @@ Summary: The Linux kernel
%define all_arch_configs kernel-%{version}-i?86*.config
%define image_install_path boot
%define hdrarch i386
-# we build always xen i686 HV with pae
-%define xen_flags verbose=y crash_debug=y pae=y
%define kernel_image arch/x86/boot/bzImage
%endif
@@ -334,10 +299,6 @@ Summary: The Linux kernel
%define image_install_path boot/efi/EFI/redhat
%define make_target compressed
%define kernel_image vmlinux.gz
-# ia64 xen HV doesn't building with debug=y at the moment
-%define xen_flags verbose=y crash_debug=y
-%define xen_target compressed
-%define xen_image vmlinux.gz
%endif
%ifarch alpha alphaev56
@@ -374,7 +335,6 @@ Summary: The Linux kernel
%define with_up 0
%define with_smp 0
%define with_pae 0
-%define with_xen 0
%define with_kdump 0
%define with_debuginfo 0
%define _enable_debug_packages 0
@@ -497,8 +457,6 @@ BuildRequires: rpm-build >= 4.4.2.1-4
%endif
Source0: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-%{kversion}.tar.bz2
-#Source1: xen-%{xen_hv_cset}.tar.bz2
-Source2: Config.mk
Source10: COPYING.modules
Source11: genkey
@@ -509,18 +467,15 @@ Source20: Makefile.config
Source21: config-debug
Source22: config-nodebug
Source23: config-generic
-Source24: config-xen-generic
-Source25: config-rhel-generic
-Source26: config-rhel-x86-generic
+Source24: config-rhel-generic
+Source25: config-rhel-x86-generic
Source30: config-x86-generic
Source31: config-i586
Source32: config-i686
Source33: config-i686-PAE
-Source34: config-xen-x86
Source40: config-x86_64-generic
-Source41: config-xen-x86_64
Source50: config-powerpc-generic
Source51: config-powerpc32-generic
@@ -530,7 +485,6 @@ Source54: config-powerpc64-kdump
Source60: config-ia64-generic
Source61: config-ia64
-Source62: config-xen-ia64
Source70: config-s390x
@@ -823,13 +777,6 @@ It should only be installed when trying
on kernel bugs, as some of these options impact performance noticably.
-%define variant_summary The Linux kernel compiled for Xen VM operations
-%kernel_variant_package -n Xen xen
-%description xen
-This package includes a version of the Linux kernel which
-runs in a Xen VM. It works for both privileged and unprivileged guests.
-
-
%define variant_summary A minimal Linux kernel compiled for crash dumps
%kernel_variant_package kdump
%description kdump
@@ -861,13 +808,6 @@ exit 1
%endif
%endif
-%if %{with_xenonly}
-%if !%{with_xen}
-echo "Cannot build --with xenonly, xen build is disabled"
-exit 1
-%endif
-%endif
-
patch_command='patch -p1 -F1 -s'
ApplyPatch()
{
@@ -1220,19 +1160,6 @@ find . \( -name "*.orig" -o -name "*~" \
cd ..
-# Unpack the Xen tarball.
-%if %{includexen}
-cp %{SOURCE2} .
-if [ -d xen ]; then
- rm -rf xen
-fi
-%setup -D -T -q -n kernel-%{kversion} -a1
-cd xen
-# Any necessary hypervisor patches go here
-
-%endif
-
-
###
### build
###
@@ -1376,9 +1303,6 @@ BuildKernel() {
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
@@ -1463,17 +1387,6 @@ EOF
rm -rf $RPM_BUILD_ROOT
mkdir -p $RPM_BUILD_ROOT/boot
-%if %{includexen}
-%if %{with_xen}
- cd xen
- mkdir -p $RPM_BUILD_ROOT/%{image_install_path} $RPM_BUILD_ROOT/boot
- make %{?_smp_mflags} %{xen_flags}
- install -m 644 xen.gz $RPM_BUILD_ROOT/%{image_install_path}/xen.gz-%{KVERREL}.xen
- install -m 755 xen-syms $RPM_BUILD_ROOT/boot/xen-syms-%{KVERREL}.xen
- cd ..
-%endif
-%endif
-
cd linux-%{kversion}.%{_target_cpu}
%if %{with_debug}
@@ -1495,12 +1408,6 @@ BuildKernel %make_target %kernel_image
BuildKernel %make_target %kernel_image smp
%endif
-%if %{includexen}
-%if %{with_xen}
-BuildKernel %xen_target %xen_image xen
-%endif
-%endif
-
%if %{with_kdump}
BuildKernel vmlinux vmlinux kdump vmlinux
%endif
@@ -1669,8 +1576,6 @@ fi}\
%kernel_variant_post -v PAEdebug -s kernel-smp -r kernel-PAEdebug
%kernel_variant_preun PAEdebug
-%kernel_variant_preun xen
-%kernel_variant_post -v xen -s kernel-xen[0U] -r kernel-xen -- `[ -d /proc/xen -a ! -e /proc/xen/xsd_kva ] || echo --multiboot=/%{image_install_path}/xen.gz-%{KVERREL}.xen`
if [ -x /sbin/ldconfig ]
then
/sbin/ldconfig -X || exit $?
@@ -1775,7 +1680,6 @@ fi
%kernel_variant_files %{with_pae} PAE
%kernel_variant_files %{with_pae_debug} PAEdebug
%kernel_variant_files -k vmlinux %{with_kdump} kdump
-%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen %{with_xen} xen
%changelog
* Tue Jul 22 2008 Dave Jones <davej(a)redhat.com>
Index: devel/config-xen-generic
===================================================================
--- devel.orig/config-xen-generic 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/config-xen-generic 2008-07-23 14:12:23.000000000 +0100
@@ -1,74 +0,0 @@
-
-CONFIG_XEN_PCIDEV_FRONTEND=y
-# CONFIG_XEN_PCIDEV_FE_DEBUG is not set
-
-
-CONFIG_XEN=y
-CONFIG_XEN_INTERFACE_VERSION=0x00030202
-
-#
-# XEN
-#
-CONFIG_XEN_PRIVILEGED_GUEST=y
-# CONFIG_XEN_UNPRIVILEGED_GUEST is not set
-CONFIG_XEN_PRIVCMD=y
-CONFIG_XEN_XENBUS_DEV=y
-CONFIG_XEN_BACKEND=y
-CONFIG_XEN_BLKDEV_BACKEND=m
-CONFIG_XEN_BLKDEV_TAP=m
-CONFIG_XEN_NETDEV_BACKEND=m
-# CONFIG_XEN_NETDEV_PIPELINED_TRANSMITTER is not set
-CONFIG_XEN_NETDEV_LOOPBACK=m
-CONFIG_XEN_PCIDEV_BACKEND=m
-CONFIG_XEN_PCIDEV_BACKEND_VPCI=y
-# CONFIG_XEN_PCIDEV_BACKEND_PASS is not set
-# CONFIG_XEN_PCIDEV_BE_DEBUG is not set
-# CONFIG_XEN_TPMDEV_BACKEND is not set
-CONFIG_XEN_BLKDEV_FRONTEND=m
-CONFIG_XEN_NETDEV_FRONTEND=m
-CONFIG_XEN_FRAMEBUFFER=y
-CONFIG_XEN_KEYBOARD=y
-CONFIG_XEN_SCRUB_PAGES=y
-# CONFIG_XEN_DISABLE_SERIAL is not set
-CONFIG_XEN_SYSFS=y
-CONFIG_XEN_COMPAT_030002_AND_LATER=y
-# CONFIG_XEN_COMPAT_LATEST_ONLY is not set
-CONFIG_XEN_COMPAT_030002=y
-CONFIG_NO_IDLE_HZ=y
-CONFIG_XEN_UTIL=y
-CONFIG_XEN_BALLOON=y
-CONFIG_XEN_DEVMEM=y
-CONFIG_XEN_SKBUFF=y
-CONFIG_XEN_REBOOT=y
-CONFIG_XEN_SMPBOOT=y
-
-# Microcode needs sys_mlock & sys_munlock that are not exported
-# it needs to be compiled in
-# FIXME: This isn't going to work as of .19, due to firmware loader
-# not being available that early in boot. This will cause long pauses during boot.
-CONFIG_MICROCODE=y
-
-# TPM is not working, somebody have to merge the xen bits
-# CONFIG_TCG_TPM is not set
-
-# frequency scaling really needs to be done in the hypervisor instead
-# CONFIG_CPU_FREQ is not set
-
-# need to set the serial stuff up like this or serial console doesn't
-# work quite right in dom0. ick.
-CONFIG_SERIAL_8250=m
-# CONFIG_SERIAL_8250_CONSOLE is not set
-
-# CONFIG_HZ_1000 is not set
-CONFIG_HZ_250=y
-
-# xen and kvm conflict
-# CONFIG_KVM is not set
-# CONFIG_KVM_INTEL is not set
-# CONFIG_KVM_AMD is not set
-
-
-CONFIG_XEN_KBDDEV_FRONTEND=m
-CONFIG_XEN_FBDEV_FRONTEND=m
-
-CONFIG_XEN_MAX_DOMAIN_MEMORY=8
Index: devel/config-xen-ia64
===================================================================
--- devel.orig/config-xen-ia64 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/config-xen-ia64 2008-07-23 14:12:23.000000000 +0100
@@ -1,25 +0,0 @@
-# CONFIG_IA64_GENERIC is not set
-CONFIG_IA64_DIG=y
-# CONFIG_DISCONTIGMEM_MANUAL is not set
-# CONFIG_SPARSEMEM_MANUAL is not set
-CONFIG_FLATMEM_MANUAL=y
-CONFIG_FORCE_MAX_ZONEORDER=11
-
-CONFIG_XEN=y
-CONFIG_XEN_IA64_DOM0_VP=y
-CONFIG_XEN_DISABLE_SERIAL=y
-# CONFIG_XEN_PCIDEV_BACKEND is not set
-# CONFIG_XEN_PCIDEV_BACKEND_VPCI is not set
-# CONFIG_XEN_PCIDEV_BACKEND_PASS is not set
-# CONFIG_XEN_PCIDEV_BE_DEBUG is not set
-# CONFIG_XEN_TPMDEV_BACKEND is not set
-
-# internal #defines conflict with xen-ia64
-# CONFIG_FB_NEOMAGIC is not set
-
-# don't work, missing symbols
-# CONFIG_KEXEC is not set
-# CONFIG_CRASH_DUMP is not set
-
-# Missing function not exported
-# CONFIG_XEN_BLKDEV_TAP is not set
Index: devel/config-xen-x86
===================================================================
--- devel.orig/config-xen-x86 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/config-xen-x86 2008-07-23 14:12:23.000000000 +0100
@@ -1,4 +0,0 @@
-
-# CONFIG_X86_PC is not set
-CONFIG_X86_XEN=y
-# CONFIG_X86_GENERICARCH is not set
Index: devel/config-xen-x86_64
===================================================================
--- devel.orig/config-xen-x86_64 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/config-xen-x86_64 2008-07-23 14:12:23.000000000 +0100
@@ -1,10 +0,0 @@
-# things we want different from i686 xen
-
-CONFIG_X86_64=y
-
-# CONFIG_X86_XEN is not set
-CONFIG_X86_64_XEN=y
-
-CONFIG_GENERIC_CPU=y
-
-# CONFIG_HVC_XEN is not set
Index: devel/scripts/rebase-xen-hv.sh
===================================================================
--- devel.orig/scripts/rebase-xen-hv.sh 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/scripts/rebase-xen-hv.sh 2008-07-23 14:12:23.000000000 +0100
@@ -1,18 +0,0 @@
-#!/bin/bash
-
-# it only rebases de hypervisor now
-
-set -x
-
-pushd xen || exit 1
-make clean
-popd
-
-CSET=`hg tip | grep "changeset:" | cut -f2 -d':' | sed 's/ //g'`
-tar cvf xen-$CSET.tar xen || exit 1
-rm -f xen-$CSET.tar.bz2
-bzip2 -v9 xen-$CSET.tar || exit 1
-
-set +x
-
-ls -l xen-$CSET.tar.bz2
Index: devel/scripts/rebase-xen-kernel.sh
===================================================================
--- devel.orig/scripts/rebase-xen-kernel.sh 2008-07-23 14:12:23.000000000 +0100
+++ devel.orig/scripts/rebase-xen-kernel.sh 2008-07-23 14:12:23.000000000 +0100
@@ -1,29 +0,0 @@
-#!/bin/bash
-
-# you are supposed to have both linux-2.6 "upstream tree"
-# and linux-2.6-xen-fedora mercurial updated against that tree
-
-# it needs linux-2.6 linux-2.6-xen and linux-2.6-xen-fedora on the current directory
-# with the right changesets on them.
-
-set -x
-
-# remove previous patch if it exist
-rm -f linux-2.6-xen.patch
-
-for repo in linux-2.6 linux-2.6-xen-fedora xen-3.0.3-testing linux-2.6-xen-3.0.3 ; do
- if [ ! -d $repo/ ]; then
- echo "$repo directory don't exist";
- exit 1
- else
- echo " * $repo `cd $repo; (hg tip | grep 'changeset:')`" >> linux-2.6-xen.patch
- fi
-done
-
-/usr/bin/diff -urNp --exclude=".hg*" --exclude="*.orig" --exclude="*~" \
- /scratch/src/linux-2.6.18/ linux-2.6-xen-fedora/ >> linux-2.6-xen.patch
-
-
-set +x
-
-ls -lh linux-2.6-xen.patch
Index: devel/Makefile.config
===================================================================
--- devel.orig/Makefile.config 2008-07-23 14:13:20.000000000 +0100
+++ devel.orig/Makefile.config 2008-07-23 14:13:20.000000000 +0100
@@ -12,9 +12,7 @@ CONFIGFILES = \
$(CFG)-s390x.config \
$(CFG)-ppc.config $(CFG)-ppc-smp.config \
$(CFG)-sparc64.config $(CFG)-sparc64-smp.config \
- $(CFG)-ppc64.config $(CFG)-ppc64-kdump.config $(CFG)-ia64.config \
- $(CFG)-i686-xen.config $(CFG)-x86_64-xen.config \
- $(CFG)-ia64-xen.config
+ $(CFG)-ppc64.config $(CFG)-ppc64-kdump.config $(CFG)-ia64.config
PLATFORMS = x86 x86_64 powerpc powerpc32 powerpc64 s390x ia64 sparc64
TEMPFILES = $(addprefix temp-, $(addsuffix -generic, $(PLATFORMS)))
@@ -61,21 +59,6 @@ temp-s390-generic: config-s390x temp-gen
temp-ia64-generic: config-ia64-generic temp-generic
perl merge.pl $^ > $@
-temp-x86-xen-generic-tmp: config-xen-generic temp-x86-generic
- perl merge.pl $^ > $@
-
-temp-x86-xen-generic: config-xen-x86 temp-x86-xen-generic-tmp
- perl merge.pl $^ > $@
-
-temp-x86_64-xen-generic-tmp: config-xen-generic temp-x86_64-generic
- perl merge.pl $^ > $@
-
-temp-x86_64-xen-generic: config-xen-x86_64 temp-x86_64-xen-generic-tmp
- perl merge.pl $^ > $@
-
-temp-ia64-xen-generic: config-xen-generic temp-ia64-generic
- perl merge.pl $^ > $@
-
kernel-$(VERSION)-i686.config: config-i686 temp-x86-generic
perl merge.pl $^ i386 > $@
@@ -120,12 +103,3 @@ kernel-$(VERSION)-ppc-smp.config: config
kernel-$(VERSION)-ia64.config: config-ia64 temp-ia64-generic
perl merge.pl $^ ia64 > $@
-
-kernel-$(VERSION)-i686-xen.config: config-i686-PAE temp-x86-xen-generic
- perl merge.pl $^ i386 > $@
-
-kernel-$(VERSION)-x86_64-xen.config: /dev/null temp-x86_64-xen-generic
- perl merge.pl $^ x86_64 > $@
-
-kernel-$(VERSION)-ia64-xen.config: config-xen-ia64 temp-ia64-xen-generic
- perl merge.pl $^ ia64 > $@
--
15 years, 9 months
[patch 2/7] Change how we do nosegneg
by Mark McLoughlin
We should really only install ld.so.conf files from packages
that actually have CONFIG_XEN enabled, but it would be
slightly messy to have only kernel-PAE.i686 and kernel.x86_64
include it.
Since it won't actually be used unless it's enabled by the
xen kernel at runtime, let's be lazy and have all variants
install them.
Index: devel/kernel.spec
===================================================================
--- devel.orig/kernel.spec 2008-07-23 14:05:27.000000000 +0100
+++ devel.orig/kernel.spec 2008-07-23 14:05:27.000000000 +0100
@@ -407,7 +407,7 @@ Summary: The Linux kernel
#
# The ld.so.conf.d file we install uses syntax older ldconfig's don't grok.
#
-%define kernel_xen_conflicts glibc < 2.3.5-1, xen < 3.0.1
+%define nosegneg_conflicts glibc < 2.3.5-1, xen < 3.0.1
# 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
@@ -440,6 +440,7 @@ Provides: kernel-uname-r = %{KVERREL}%{?
Requires(pre): %{kernel_prereq}\
Conflicts: %{kernel_dot_org_conflicts}\
Conflicts: %{package_conflicts}\
+Conflicts: %{nosegneg_conflicts}\
%{?1:%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}}\
%{?1:%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}}\
%{?1:%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}}\
@@ -1440,6 +1441,18 @@ BuildKernel() {
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
+
+ mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
+ rm -f $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-$KernelVer.nosegneg.conf
+ cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-$KernelVer.nosegneg.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-$KernelVer.nosegneg.conf
}
###
@@ -1521,22 +1534,6 @@ BuildKernel vmlinux vmlinux kdump vmlinu
cd linux-%{kversion}.%{_target_cpu}
-%if %{includexen}
-%if %{with_xen}
-mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
-rm -f $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf
-cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.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}.xen.conf
-%endif
-%endif
-
%if %{with_doc}
mkdir -p $RPM_BUILD_ROOT/usr/share/doc/kernel-doc-%{kversion}/Documentation
@@ -1745,6 +1742,7 @@ fi
/lib/modules/%{KVERREL}%{?2:.%{2}}/modules.networking\
/lib/modules/%{KVERREL}%{?2:.%{2}}/modules.order\
%ghost /boot/initrd-%{KVERREL}%{?2:.%{2}}.img\
+/etc/ld.so.conf.d/kernelcap-%{KVERREL}%{?2:.%{2}}.nosegneg.conf\
%{?-e:%{-e*}}\
%{expand:%%files %{?2:%{2}-}devel}\
%defattr(-,root,root)\
@@ -1777,7 +1775,7 @@ fi
%kernel_variant_files %{with_pae} PAE
%kernel_variant_files %{with_pae_debug} PAEdebug
%kernel_variant_files -k vmlinux %{with_kdump} kdump
-%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
+%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen %{with_xen} xen
%changelog
* Tue Jul 22 2008 Dave Jones <davej(a)redhat.com>
--
15 years, 9 months
[patch 1/7] Fix kernel_{conflicts,obsoletes,provides}
by Mark McLoughlin
If you try and use e.g. kernel_obsoletes, you'll soon find
that it's actually kernel__obsoletes you currently need :-)
Index: devel/kernel.spec
===================================================================
--- devel.orig/kernel.spec 2008-07-23 14:04:17.000000000 +0100
+++ devel.orig/kernel.spec 2008-07-23 14:04:17.000000000 +0100
@@ -440,9 +440,9 @@ Provides: kernel-uname-r = %{KVERREL}%{?
Requires(pre): %{kernel_prereq}\
Conflicts: %{kernel_dot_org_conflicts}\
Conflicts: %{package_conflicts}\
-%{?1:%{expand:%%{?kernel_%{1}_conflicts:Conflicts: %%{kernel_%{1}_conflicts}}}}\
-%{?1:%{expand:%%{?kernel_%{1}_obsoletes:Obsoletes: %%{kernel_%{1}_obsoletes}}}}\
-%{?1:%{expand:%%{?kernel_%{1}_provides:Provides: %%{kernel_%{1}_provides}}}}\
+%{?1:%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}}\
+%{?1:%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}}\
+%{?1:%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}}\
# 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\
--
15 years, 9 months
[patch 0/7] Enable pv_ops Xen; kill the kernel-xen RPM
by Mark McLoughlin
Hey,
Now that support for 64 bit Xen Domu is upstream, we
should enable Xen pv_ops and, at last and forever, kill off
the kernel-xen RPM.
There shouldn't be anything too suprising in the
following patches ... well, apart from the fact that it's
all upstream :-)
I'm still doing a last bit of testing making sure
that it all works fine, so don't apply yet ... but comments
are very welcome.
Cheers,
Mark.
--
15 years, 9 months
F9 update lag.
by Dave Jones
We have something of a problem with F9.
A week ago, we should have pushed out an update for 2.6.25.11
which fixes an exploitable security hole. It was fixed in CVS
on Sunday, and a build made available shortly afterwards.
It's been held up from being pushed to updates-final due to
problems with the wireless patches that introduce regressions
since the last update that went out.
In situations like this I see us having several choices
(in order of preference)
1. We branch from the older update in CVS
and add just the security fix, and get that out.
2. We revert all the wireless changes back to the previous update.
3. We ship anyway, with the known wireless regressions.
#3 is of course, guaranteed not to win us friends with the
wireless users.
We should get something out asap though, because it's only a
matter of time before someone leaks an exploit.
Dave
--
http://www.codemonkey.org.uk
15 years, 9 months
gspca as part of the rawhide kernel?
by Hans de Goede
Hi all,
As some of you know I've been working on improving webcam support under Fedora,
see:
http://fedoraproject.org/wiki/Features/BetterWebcamSupport
http://hansdegoede.livejournal.com/
One of the things I've been working on is in beating gspcav2 (a v4l2 port of
gspca) into shape, although I must admit most of the work has been done by
Jean-François Moine, the latest version is available from his mercurial tree
and it has been pulled into the official v4l-dvb tree for wider testing. Once
it has been in the v4l-dvb tree it will make its way into the mainline hopefuly
for 2.6.27, if not then certainly fotr 2.6.28.
To check it out see:
http://linuxtv.org/hg/~jfrancois/gspca/
Some time ago I've already done a review of the gspca_core and there are some
locking issues to solve (I already know how, I just need to code them out).
Once this is done I would like to see gspcav2 be added to the Fedora kernel, as
to make the:
http://fedoraproject.org/wiki/Features/BetterWebcamSupport
Feature a reality (also needs userspace work, I'm on this).
So my questions are:
1) would it be acceptable to cary the gspca driver as a patch (only new files
and makefile / kconfig changes doesn't touch anything else) until it is
merged upstream. Note that this is much needed for wider webcam support and
that gspca is on its way to the mainline now, and I'll personally will be
working on ironing out any issues upstream may have with gspca as is.
2) Assuming the answer to 1 is yes, how do I move forward, can I get be added
to the kernel package acl, what are the procedures for adding a patch and
building a new kernel, etc?
Thanks & Regards,
Hans
15 years, 9 months
Firmware
by David Woodhouse
Been playing with how I'd make the kernel package deal with the new
'make firmware_install' stuff. Currently looks something like this.
I suspect that (for now) we should make the kernel binary packages
depend on kernel-firmware?
Should the package own the /lib/firmware/ directory?
Ideally we'll want kernel-firmware to be a .noarch.rpm, but we can't get
that until we start to build it from a separate srpm.
Other comments?
(the patch is from git.infradead.org/users/dwmw2/firmware-2.6.git)
Index: config-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/config-generic,v
retrieving revision 1.109
diff -u -p -r1.109 config-generic
--- config-generic 4 Jun 2008 00:22:50 -0000 1.109
+++ config-generic 9 Jun 2008 09:59:12 -0000
@@ -2479,9 +2479,9 @@ CONFIG_SND_ICE1724=m
CONFIG_SND_INTEL8X0=m
CONFIG_SND_INTEL8X0M=m
CONFIG_SND_KORG1212=m
-CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_KORG1212_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MAESTRO3=m
-CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_MAESTRO3_FIRMWARE_IN_KERNEL is not set
CONFIG_SND_MIRO=m
CONFIG_SND_MIXART=m
CONFIG_SND_NM256=m
@@ -2502,7 +2502,7 @@ CONFIG_SND_VIA82XX_MODEM=m
CONFIG_SND_VIRTUOSO=m
CONFIG_SND_VX222=m
CONFIG_SND_YMFPCI=m
-CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL=y
+# CONFIG_SND_YMFPCI_FIRMWARE_IN_KERNEL is not set
#
# ALSA USB devices
@@ -3536,3 +3536,14 @@ CONFIG_SOC_CAMERA_MT9M001=m
CONFIG_SOC_CAMERA_MT9V022=m
# MT9V022_PCA9536_SWITCH is not set
+CONFIG_BUILTIN_FIRMWARE=""
+# CONFIG_USB_KAWETH_FIRMWARE is not set
+# CONFIG_DVB_TTUSB_BUDGET_FIRMWARE is not set
+# CONFIG_USB_SERIAL_WHITEHEAT_FIRMWARE is not set
+# CONFIG_USB_SERIAL_KEYSPAN_PDA_FIRMWARE is not set
+# CONFIG_USB_SERIAL_TI_3410_FIRMWARE is not set
+# CONFIG_USB_SERIAL_TI_5052_FIRMWARE is not set
+# CONFIG_USB_SERIAL_XIRCOM_FIRMWARE is not set
+# CONFIG_USB_EMI62_FIRMWARE is not set
+# CONFIG_USB_EMI26_FIRMWARE is not set
+
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.679
diff -u -p -r1.679 kernel.spec
--- kernel.spec 7 Jun 2008 01:48:53 -0000 1.679
+++ kernel.spec 9 Jun 2008 09:59:13 -0000
@@ -76,6 +76,8 @@ Summary: The Linux kernel (the core of t
%define with_doc %{?_without_doc: 0} %{?!_without_doc: 1}
# kernel-headers
%define with_headers %{?_without_headers: 0} %{?!_without_headers: 1}
+# kernel-firmware
+%define with_firmware %{?_without_firmware: 0} %{?!_without_firmware: 1}
# kernel-debuginfo
%define with_debuginfo %{?_without_debuginfo: 0} %{!?_without_debuginfo: 1}
# kernel-bootwrapper (for creating zImages from kernel + initrd)
@@ -565,6 +567,7 @@ Patch07: linux-2.6-compile-fixes.patch
#Patch08: linux-2.6-compile-fix-gcc-43.patch
%if !%{nopatches}
+Patch5: linux-2.6-firmware.patch
Patch10: linux-2.6-hotfixes.patch
@@ -693,6 +696,14 @@ header files define structures and const
building most standard programs and are also needed for rebuilding the
glibc package.
+%package firmware
+Summary: Firmware files used by the Linux kernel
+Group: Development/System
+License: Redistributable
+%description firmware
+Kernel-firmware includes firmware files required for some devices to
+operate.
+
%package bootwrapper
Summary: Boot wrapper files for generating combined kernel + initrd images
Group: Development/System
@@ -992,6 +1003,7 @@ fi
%if !%{nopatches}
+ApplyPatch linux-2.6-firmware.patch
ApplyPatch linux-2.6-hotfixes.patch
# Roland's utrace ptrace replacement.
@@ -1581,6 +1593,10 @@ rm -f $RPM_BUILD_ROOT/usr/include/asm*/i
rm -f $RPM_BUILD_ROOT/usr/include/asm*/irq.h
%endif
+%if %{with_firmware}
+make INSTALL_FW_PATH=$RPM_BUILD_ROOT/lib/firmware firmware_install
+%endif
+
%if %{with_bootwrapper}
make DESTDIR=$RPM_BUILD_ROOT bootwrapper_install WRAPPER_OBJDIR=%{_libdir}/kernel-wrapper WRAPPER_DTSDIR=%{_libdir}/kernel-wrapper/dts
%endif
@@ -1690,6 +1706,12 @@ fi
/usr/include/*
%endif
+%if %{with_firmware}
+%files firmware
+%defattr(-,root,root)
+/lib/firmware/*
+%endif
+
%if %{with_bootwrapper}
%files bootwrapper
%defattr(-,root,root)
--
dwmw2
15 years, 9 months
kernel-vanilla-2.6.26-137.fc10
by Roland McGrath
BTW, see http://koji.fedoraproject.org/scratch/roland/task_714174/
for a kernel-vanilla build I did of 2.6.26.
This gives a baseline for regression testing any problems to see if they
are caused by some Fedora patches (e.g. utrace) or are also upstream.
I think koji scratch only stays around for a couple of days.
Maybe there is a better place to put these.
Was there ever a plan to put kernel-vanilla rpms up for public consumption
on a regular basis?
Thanks,
Roland
15 years, 9 months