Setting tag linux-2.6-27-14
[linux-2.6.git] / kernel-2.6.spec
1 #
2 # $Id$
3 #
4 %define url $URL$
5
6 Summary: The Linux kernel (the core of the Linux operating system)
7
8 # What parts do we want to build?  We must build at least one kernel.
9 # These are the kernels that are built IF the architecture allows it.
10
11 %define buildup 1
12 %define builduml 0
13 %define buildxen 0
14 %define builddoc 0
15 %define headers 1
16
17 %{!?pldistro:%global pldistro planetlab}
18
19 # default is to search the config file after pldistro
20 # e.g. set
21 # kernel-SPECVARS := kernelconfig=planetlab
22 # to use the planetlab config from another pldistro 
23 # without having to manage symlinks
24 %{!?kernelconfig:%global kernelconfig %{pldistro}}
25
26 # Versions of various parts
27
28 # for module-tag.py - sublevel is used for the version (middle) part of tag names
29 %define name linux-2.6
30 %define module_version_varname sublevel
31 %define taglevel 14
32
33 #
34 # Polite request for people who spin their own kernel rpms:
35 # please modify the "release" field in a way that identifies
36 # that the kernel isn't the stock distribution kernel, for example by
37 # adding some text to the end of the version number.
38 #
39 %define sublevel 27
40 %define patchlevel 47
41 %define kversion 2.6.%{sublevel}
42 %define rpmversion 2.6.%{sublevel}%{?patchlevel:.%{patchlevel}}
43
44 %define vsversion 2.3.0.36.4
45
46 # Will go away when VServer supports NetNS in mainline. Currently, it must be 
47 # updated every time the PL kernel is updated.
48 %define vini_pl_patch 561
49
50 %define release %{taglevel}%{?pldistro:.%{pldistro}}%{?date:.%{date}}
51
52 %define signmodules 0
53 %define make_target bzImage
54 #%if "%{distro}" == "Fedora" && %{distrorelease} >= 13
55 #%define KVERREL %{version}-%{release}
56 #%else
57 %define KVERREL %{PACKAGE_VERSION}-%{PACKAGE_RELEASE}
58 #%endif
59
60 # Override generic defaults with per-arch defaults
61
62 %define image_install_path boot
63
64 #
65 # Three sets of minimum package version requirements in the form of Conflicts:
66 # to versions below the minimum
67 #
68
69 #
70 # First the general kernel 2.6 required versions as per
71 # Documentation/Changes
72 #
73 %define kernel_dot_org_conflicts  ppp <= 2.3.15, pcmcia-cs <= 3.1.20, isdn4k-utils <= 3.0, mount < 2.10r-5, nfs-utils < 1.0.3, e2fsprogs < 1.29, util-linux < 2.10, jfsutils < 1.0.14, reiserfsprogs < 3.6.3, xfsprogs < 2.1.0, procps < 2.0.9, oprofile < 0.5.3
74
75
76 # Then a series of requirements that are distribution specific, either 
77 # because we add patches for something, or the older versions have 
78 # problems with the newer kernel or lack certain things that make 
79 # integration in the distro harder than needed.
80 #
81 %define package_conflicts  cipe < 1.4.5, kudzu <= 0.92, initscripts < 7.23, dev < 3.2-7, iptables < 1.2.5-3, bcm5820 < 1.81, nvidia-rh72 <= 1.0 selinux-policy-targeted < 1.23.16-1
82
83 #
84 # Several packages had bugs in them that became obvious when the NPTL
85 # threading code got integrated.
86 #
87 %define nptl_conflicts SysVinit < 2.84-13, pam < 0.75-48, vixie-cron < 3.0.1-73, privoxy < 3.0.0-8, spamassassin < 2.44-4.8.x,  cups < 1.1.17-13
88
89 #
90 # The ld.so.conf.d file we install uses syntax older ldconfig's don't grok.
91 #
92
93 # MEF commented out
94 #define xen_conflicts glibc < 2.3.5-1
95
96 #
97 # Packages that need to be installed before the kernel is, because the %post
98 # scripts use them.
99 #
100 %define kernel_prereq  fileutils, module-init-tools, initscripts >= 5.83, mkinitrd >= 3.5.5
101
102 Vendor: PlanetLab
103 Packager: PlanetLab Central <support@planet-lab.org>
104 Distribution: PlanetLab %{plrelease}
105 URL: %(echo %{url} | cut -d ' ' -f 2)
106
107 Name: kernel
108 Group: System Environment/Kernel
109 License: GPLv2
110 Version: %{rpmversion}
111 Release: %{release}
112 ExclusiveOS: Linux
113 Provides: kernel = %{version}
114 Provides: kernel-drm = 4.3.0
115 Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}
116 Provides: kernel-smp = %{rpmversion}-%{release}
117 Provides: kernel-smp-%{_target_cpu} = %{rpmversion}-%{release}
118 Prereq: %{kernel_prereq}
119 Conflicts: %{kernel_dot_org_conflicts}
120 Conflicts: %{package_conflicts}
121 Conflicts: %{nptl_conflicts}
122 # We can't let RPM do the dependencies automatic because it'll then pick up
123 # a correct but undesirable perl dependency from the module headers which
124 # isn't required for the kernel proper to function
125 AutoReqProv: no
126
127 #
128 # List the packages used during the kernel build
129 #
130 BuildPreReq: module-init-tools, patch >= 2.5.4, bash >= 2.03, sh-utils, tar
131 BuildPreReq: bzip2, findutils, gzip, m4, perl, make >= 3.78, gnupg, diffutils
132 BuildRequires: gcc >= 3.3.3, binutils >= 2.12, redhat-rpm-config
133 BuildConflicts: rhbuildsys(DiskFree) < 500Mb
134
135
136 Source0: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-%{kversion}.tar.bz2
137
138 Source11: %{kernelconfig}-%{kversion}-i686.config
139 Source12: %{kernelconfig}-%{kversion}-x86_64.config
140 %if %{builduml}
141 Source20: %{kernelconfig}-%{kversion}-i686-uml.config
142 %endif
143 %if %{buildxen}
144 Source30: %{kernelconfig}-%{kversion}-i686-xenU.config
145 %endif
146
147 # Mainline patches
148 %if "0%{patchlevel}"
149 Patch000: ftp://ftp.kernel.org/pub/linux/kernel/v2.6/patch-%{rpmversion}.bz2
150 %endif
151
152 Patch010: linux-2.6-010-e1000e-ich10lan.patch
153
154 Patch100: linux-2.6-100-build-nonintconfig.patch
155
156 # Linux-VServer
157 Patch200: patch-%{rpmversion}-vs%{vsversion}.diff
158 Patch220: delta-ptrace-fix01.diff
159 Patch230: delta-pivot-fix01.diff
160 Patch240: delta-killperm-fix01.diff
161
162 # IP sets
163 Patch250: linux-2.6-250-ipsets.patch
164
165 # PlanetLab
166 Patch500: linux-2.6-500-vserver-filesharing.patch
167 Patch510: linux-2.6-510-ipod.patch
168 Patch521: linux-2.6-521-packet-tagging.patch
169 Patch522: linux-2.6-522-iptables-connection-tagging.patch
170 Patch523: linux-2.6-523-raw-sockets.patch
171 Patch524: linux-2.6-524-peercred.patch
172 Patch525: linux-2.6-525-sknid-elevator.patch
173 Patch527: linux-2.6-527-iptables-classify-add-mark.patch
174 Patch530: linux-2.6-530-built-by-support.patch
175 Patch540: linux-2.6-540-oom-kill.patch
176 Patch550: linux-2.6-550-raise-default-nfile-ulimit.patch
177 Patch560: linux-2.6-560-mmconf.patch
178 Patch570: linux-2.6-570-tagxid.patch
179 Patch580: linux-2.6-580-show-proc-virt.patch
180 Patch590: linux-2.6-590-dcookies-mm.patch
181 Patch591: linux-2.6-591-chopstix-intern.patch
182 Patch640: linux-2.6-640-netlink-audit-hack.patch
183 Patch650: linux-2.6-650-hangcheck-reboot.patch
184 Patch660: linux-2.6-660-nmi-watchdog-default.patch
185 Patch680: linux-2.6-680-htb-hysteresis-tso.patch
186 # Patch690: linux-2.6-690-web100.patch
187 Patch700: linux-2.6-700-egre.patch
188 Patch710: linux-2.6-710-avoid-64bits-addr-pcmcia.patch
189
190 # Ext4
191 Patch800: linux-2.6-800-rename-ext4dev-to-ext4.patch
192
193 #Patch900: linux-2.6-900-ext3_mount_default_to_barrier.patch
194 #Patch910: linux-2.6-910-support_barriers_on_single_device_dm_devices.patch
195
196 BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
197
198 %description
199 The kernel package contains the Linux kernel (vmlinuz), the core of any
200 Linux operating system.  The kernel handles the basic functions
201 of the operating system:  memory allocation, process allocation, device
202 input and output, etc.
203 Configured with kernelconfig=%{kernelconfig}
204
205 %package devel
206 Summary: Development package for building kernel modules to match the kernel.
207 Group: System Environment/Kernel
208 AutoReqProv: no
209 Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}
210 Provides: kernel-smp-devel = %{rpmversion}-%{release}
211 Provides: kernel-smp-devel-%{_target_cpu} = %{rpmversion}-%{release}
212 Prereq: /usr/bin/find
213
214 %description devel
215 This package provides kernel headers and makefiles sufficient to build modules
216 against the kernel package.
217
218
219 %package doc
220 Summary: Various documentation bits found in the kernel source.
221 Group: Documentation
222
223 %description doc
224 This package contains documentation files from the kernel
225 source. Various bits of information about the Linux kernel and the
226 device drivers shipped with it are documented in these files.
227
228 You'll want to install this package if you need a reference to the
229 options that can be passed to Linux kernel modules at load time.
230
231 %package xenU
232 Summary: The Linux kernel compiled for unprivileged Xen guest VMs
233
234 Group: System Environment/Kernel
235 Provides: kernel = %{version}
236 Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}xenU
237 Prereq: %{kernel_prereq}
238 Conflicts: %{kernel_dot_org_conflicts}
239 Conflicts: %{package_conflicts}
240 Conflicts: %{nptl_conflicts}
241
242 # MEF commented out 
243 # Conflicts: %{xen_conflicts}
244
245 # We can't let RPM do the dependencies automatic because it'll then pick up
246 # a correct but undesirable perl dependency from the module headers which
247 # isn't required for the kernel proper to function
248 AutoReqProv: no
249
250 %description xenU
251 This package includes a version of the Linux kernel which
252 runs in Xen unprivileged guest VMs.  This should be installed
253 both inside the unprivileged guest (for the modules) and in
254 the guest0 domain.
255
256 %package xenU-devel
257 Summary: Development package for building kernel modules to match the kernel.
258 Group: System Environment/Kernel
259 AutoReqProv: no
260 Provides: kernel-xenU-devel-%{_target_cpu} = %{rpmversion}-%{release}
261 Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}xenU
262 Provides: kernel-devel = %{rpmversion}-%{release}xenU
263 Prereq: /usr/sbin/hardlink, /usr/bin/find
264
265 %description xenU-devel
266 This package provides kernel headers and makefiles sufficient to build modules
267 against the kernel package.
268
269 %package uml
270 Summary: The Linux kernel compiled for use in user mode (User Mode Linux).
271
272 Group: System Environment/Kernel
273
274 %description uml
275 This package includes a user mode version of the Linux kernel.
276
277 %package uml-devel
278 Summary: Development package for building kernel modules to match the UML kernel.
279 Group: System Environment/Kernel
280 Provides: kernel-uml-devel-%{_target_cpu} = %{rpmversion}-%{release}
281 Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}smp
282 Provides: kernel-devel = %{rpmversion}-%{release}smp
283 AutoReqProv: no
284 Prereq: /usr/sbin/hardlink, /usr/bin/find
285
286 %description uml-devel
287 This package provides kernel headers and makefiles sufficient to build modules
288 against the User Mode Linux kernel package.
289
290 %package uml-modules
291 Summary: The Linux kernel modules compiled for use in user mode (User Mode Linux).
292
293 Group: System Environment/Kernel
294
295 %description uml-modules
296 This package includes a user mode version of the Linux kernel modules.
297
298 %package vserver
299 Summary: A placeholder RPM that provides kernel and kernel-drm
300
301 Group: System Environment/Kernel
302 Provides: kernel = %{version}
303 Provides: kernel-drm = 4.3.0
304 Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}
305
306 %description vserver
307 VServers do not require and cannot use kernels, but some RPMs have
308 implicit or explicit dependencies on the "kernel" package
309 (e.g. tcpdump). This package installs no files but provides the
310 necessary dependencies to make rpm and yum happy.
311
312 %package headers
313 Summary: Kernel header
314 Group: System Environment/Kernel
315
316 %description headers
317 This package contains the sanitized kernel headers.
318
319 %prep
320 # First we unpack the kernel tarball.
321 # If this isn't the first make prep, we use links to the existing clean tarball
322 # which speeds things up quite a bit.
323 if [ ! -d kernel-%{kversion}/vanilla ]; then
324   # Ok, first time we do a make prep.
325   rm -f pax_global_header
326 %setup -q -n %{name}-%{kversion} -c
327   mv linux-%{kversion} vanilla
328 else
329   # We already have a vanilla dir.
330   cd kernel-%{kversion}
331 fi
332
333 KERNEL_PREVIOUS=vanilla
334 # Dark RPM-magic to apply each patch to a hardlinked copy of the tree.
335 %define ApplyPatch() \
336   rm -fr linux-%{kversion}-%1                           \
337   cp -al $KERNEL_PREVIOUS linux-%{kversion}-%1          \
338   patchflag=-p1                                         \
339   test "%2" != "%%2" && patchflag="%2"                  \
340   PATCH="%{expand:%{PATCH%1}}"                          \
341   if test ! -e "$PATCH"; then                           \
342     echo "Patch %1 does not exist!"                     \
343     exit 1                                              \
344   fi                                                    \
345   case "$PATCH" in                                      \
346     *.bz2)  bzcat "$PATCH";;                            \
347     *.gz)   zcat "$PATCH";;                             \
348     *)      cat "$PATCH";;                              \
349   esac | patch -F1 -s -d linux-%{kversion}-%1 $patchflag \
350   KERNEL_PREVIOUS=linux-%{kversion}-%1
351
352 # This is where the patches get applied
353 %if 0%{?patchlevel}
354 %ApplyPatch 0
355 %endif
356
357 %ApplyPatch 10
358
359 %ApplyPatch 100
360
361 # vserver patch
362 %ApplyPatch 200
363 %ApplyPatch 220
364 %ApplyPatch 230
365 %ApplyPatch 240
366
367 %ApplyPatch 250
368
369 %ApplyPatch 500
370 %ApplyPatch 510
371
372 # VNET+ series
373 %ApplyPatch 521
374 %ApplyPatch 522
375 %ApplyPatch 523
376 %ApplyPatch 524
377 %ApplyPatch 525
378 %ApplyPatch 527
379
380 %ApplyPatch 530
381 %ApplyPatch 540
382 %ApplyPatch 550
383 %ApplyPatch 560
384 %ApplyPatch 570
385 %ApplyPatch 580
386 %ApplyPatch 590
387 %ApplyPatch 591
388 %ApplyPatch 640
389 %ApplyPatch 650
390 %ApplyPatch 660
391 %ApplyPatch 680
392 %ApplyPatch 700
393 %ApplyPatch 710
394
395 %ApplyPatch 800
396
397 %if 0
398 %ApplyPatch 900
399 %ApplyPatch 910
400 %endif
401
402 # NetNS conflict-resolving patch for VINI. Will work with patch vini_pl_patch-1 but may
403 # break with later patches.
404
405 %if 0%{?with_netns}
406 %ApplyPatch %vini_pl_patch
407 %endif
408
409 rm -fr linux-%{kversion}
410 ln -sf $KERNEL_PREVIOUS linux-%{kversion}
411 cd linux-%{kversion}
412
413
414 # make sure the kernel has the sublevel we know it has. This looks weird
415 # but for -pre and -rc versions we need it since we only want to use
416 # the higher version when the final kernel is released.
417 perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{sublevel}/" Makefile
418 perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -prep/" Makefile
419
420 # get rid of unwanted files resulting from patch fuzz
421 find . \( -name "*.orig" -o -name "*~" \) -exec rm -f {} \; >/dev/null
422
423
424 ###
425 ### build
426 ###
427 %build
428
429 BuildKernel() {
430     MakeTarget=$1
431     Arch=$2
432     Flavour=$3
433
434     rm -rf linux-%{_target_cpu}-%{kversion}$Flavour
435     cp -rl linux-%{kversion}/ linux-%{_target_cpu}-%{kversion}$Flavour
436     cd linux-%{_target_cpu}-%{kversion}$Flavour
437
438     # Pick the right config file for the kernel we're building
439     if [ -n "$Flavour" ] ; then
440       Config=%{kernelconfig}-%{kversion}-%{_target_cpu}-$Flavour.config
441       DevelDir=/usr/src/kernels/%{KVERREL}-$Flavour-%{_target_cpu}
442       DevelLink=/usr/src/kernels/%{KVERREL}$Flavour-%{_target_cpu}
443     else
444       Config=%{kernelconfig}-%{kversion}-%{_target_cpu}.config
445       DevelDir=/usr/src/kernels/%{KVERREL}-%{_target_cpu}
446       DevelLink=
447     fi
448
449     KernelVer=%{version}-%{release}$Flavour
450     echo BUILDING A KERNEL FOR $Flavour %{_target_cpu}...
451
452     # make sure EXTRAVERSION says what we want it to say
453     perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{?patchlevel:.%{patchlevel}}-%{release}$Flavour/" Makefile
454
455     # and now to start the build process
456
457     make -s mrproper
458     cp %{_sourcedir}/$Config .config
459
460     #Arch=`head -1 .config | cut -b 3-`
461     echo USING ARCH=$Arch
462
463     make -s ARCH=$Arch nonint_oldconfig < /dev/null > /dev/null
464     make -s ARCH=$Arch %{?_smp_mflags} $MakeTarget
465     make -s ARCH=$Arch %{?_smp_mflags} modules || exit 1
466 %if %{headers}
467     make -s ARCH=$Arch INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr
468     find $RPM_BUILD_ROOT/%{_includedir} -name \*.cmd -delete
469     rm -f $RPM_BUILD_ROOT/%{_includedir}/{..,.}{check,install}*
470 %endif
471
472     # Start installing the results
473
474 %if "%{_enable_debug_packages}" == "1"
475     mkdir -p $RPM_BUILD_ROOT/usr/lib/debug/boot
476 %endif
477     mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
478     install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
479     install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
480     if [ -f arch/$Arch/boot/bzImage ]; then
481       cp arch/$Arch/boot/bzImage $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz-$KernelVer
482     fi
483     if [ -f arch/$Arch/boot/zImage.stub ]; then
484       cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
485     fi
486     if [ "$Flavour" = "uml" ] ; then
487         install -D -m 755 linux $RPM_BUILD_ROOT/%{_bindir}/linux
488     fi
489
490     mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
491     make -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer
492
493     # And save the headers/makefiles etc for building modules against
494     #
495     # This all looks scary, but the end result is supposed to be:
496     # * all arch relevant include/ files
497     # * all Makefile/Kconfig files
498     # * all script/ files
499
500     rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
501     rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
502     mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
503     (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
504     # dirs for additional modules per module-init-tools, kbuild/modules.txt
505     mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra
506     mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
507     # first copy everything
508     cp --parents `find  -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build 
509         cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
510     if [ "$Flavour" = "uml" ] ; then
511       cp --parents -a `find arch/um -name include` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
512     fi
513     # then drop all but the needed Makefiles/Kconfig files
514     rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation
515     rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
516     rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
517     cp arch/%{_arch}/kernel/asm-offsets.s $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/kernel || :
518     cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
519     cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
520     if [ -d arch/%{_arch}/scripts ]; then
521       cp -a arch/%{_arch}/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
522     fi
523     if [ -f arch/%{_arch}/*lds ]; then
524       cp -a arch/%{_arch}/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
525     fi
526     rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
527     rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
528     mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
529     cd include
530     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
531     cp -a `readlink asm` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
532     if [ "$Arch" = "x86_64" ]; then
533       cp -a asm-x86 $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
534     fi
535 %if %{buildxen}
536     if [ "$Flavour" = "xenU" ]; then
537       cp -a xen $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
538       cp -a asm-x86 $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
539     fi
540 %endif
541 %if %{builduml}
542     if [ "$Flavour" = "uml" ] ; then
543       cp -a `readlink -f asm/arch` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
544     fi
545 %endif
546     # While arch/powerpc/include/asm is still a symlink to the old
547     # include/asm-ppc{64,} directory, include that in kernel-devel too.
548     if [ "$Arch" = "powerpc" -a -r ../arch/powerpc/include/asm ]; then
549       cp -a `readlink ../arch/powerpc/include/asm` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
550       mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/$Arch/include
551       pushd $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/$Arch/include
552       ln -sf ../../../include/asm-ppc* asm
553       popd
554     fi
555
556     # Make sure the Makefile and version.h have a matching timestamp so that
557     # external modules can be built
558     touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/linux/version.h
559     touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/linux/autoconf.h
560     cd ..
561
562     #
563     # save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
564     #
565 %if "%{_enable_debug_packages}" == "1"
566     mkdir -p $RPM_BUILD_ROOT/usr/lib/debug/lib/modules/$KernelVer
567     cp vmlinux $RPM_BUILD_ROOT/usr/lib/debug/lib/modules/$KernelVer
568 %endif
569 %if %{buildxen}
570     if [ -f vmlinuz ]; then
571       cp vmlinuz $RPM_BUILD_ROOT/%{image_install_path}/vmlinuz-$KernelVer
572     fi
573 %endif
574
575     find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
576
577     # mark modules executable so that strip-to-file can strip them
578     cat modnames | xargs chmod u+x
579
580     # remove files that will be auto generated by depmod at rpm -i time
581     rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.*
582
583     # Move the devel headers out of the root file system
584     mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
585     mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
586     ln -sf ../../..$DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
587     [ -z "$DevelLink" ] || ln -sf `basename $DevelDir` $RPM_BUILD_ROOT/$DevelLink
588 }
589
590 ###
591 # DO it...
592 ###
593
594 # prepare directories
595 rm -rf $RPM_BUILD_ROOT
596 mkdir -p $RPM_BUILD_ROOT/boot
597
598 %if "%{_target_cpu}" == "x86_64"
599 %define kernel_arch %{_target_cpu}
600 %endif
601 %if "%{_target_cpu}" == "i586"
602 %define kernel_arch i386
603 %endif
604 %if "%{_target_cpu}" == "i686"
605 %define kernel_arch i386
606 %endif
607
608 %if %{buildup}
609 BuildKernel %make_target %kernel_arch
610 %endif
611
612 %ifarch i686
613 %if %{builduml}
614 BuildKernel linux um uml
615 %endif
616
617 %if %{buildxen}
618 BuildKernel vmlinuz %kernel_arch xenU
619 %endif
620 %endif
621
622 ###
623 ### install
624 ###
625
626 %install
627
628 cd vanilla
629
630 %if %{buildxen} && "%{_target_cpu}" == "i686"
631 mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d
632 rm -f $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf
633 cat > $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf <<\EOF
634 # This directive teaches ldconfig to search in nosegneg subdirectories
635 # and cache the DSOs there with extra bit 0 set in their hwcap match
636 # fields.  In Xen guest kernels, the vDSO tells the dynamic linker to
637 # search in nosegneg subdirectories and to match this extra hwcap bit
638 # in the ld.so.cache file.
639 hwcap 0 nosegneg
640 EOF
641 chmod 444 $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf
642 %endif
643
644 %if %{builddoc}
645 mkdir -p $RPM_BUILD_ROOT/usr/share/doc/kernel-doc-%{kversion}/Documentation
646
647 # sometimes non-world-readable files sneak into the kernel source tree
648 chmod -R a+r *
649 # copy the source over
650 tar cf - Documentation | tar xf - -C $RPM_BUILD_ROOT/usr/share/doc/kernel-doc-%{kversion}
651 %endif
652
653 ###
654 ### clean
655 ###
656
657 %clean
658 rm -rf $RPM_BUILD_ROOT
659
660 ###
661 ### scripts
662 ###
663
664 # load the loop module for upgrades...in case the old modules get removed we have
665 # loopback in the kernel so that mkinitrd will work.
666 %pre
667 /sbin/modprobe loop 2> /dev/null > /dev/null  || :
668 exit 0
669
670 %post
671 if [ -f /etc/sysconfig/kernel ]; then
672   /bin/sed -i -e 's/^DEFAULTKERNEL=kernel-smp$/DEFAULTKERNEL=kernel/' /etc/sysconfig/kernel
673 fi
674
675 # trick mkinitrd in case the current environment does not have device mapper
676 rootdev=$(awk '/^[ \t]*[^#]/ { if ($2 == "/") { print $1; }}' /etc/fstab)
677 if echo $rootdev |grep -q /dev/mapper 2>/dev/null ; then
678     if [ ! -f $rootdev ]; then
679         fake_root_lvm=1
680         mkdir -p $(dirname $rootdev)
681         touch $rootdev
682     fi
683 fi
684
685 [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade %{rpmversion}-%{release}
686 #/sbin/new-kernel-pkg --package kernel --mkinitrd --depmod --install %{KVERREL}
687 # Older modutils do not support --package option
688 /sbin/new-kernel-pkg --mkinitrd --depmod --install %{KVERREL}
689
690 # remove fake handle
691 if [ -n "$fake_root_lvm" ]; then
692     rm -f $rootdev
693 fi
694
695 # make some useful links
696 pushd /boot > /dev/null ; {
697         ln -sf config-%{KVERREL} config
698         ln -sf config-%{KVERREL} configsmp
699         ln -sf initrd-%{KVERREL}.img initrd-boot
700         ln -sf initrd-%{KVERREL}.img initrd-bootsmp
701         ln -sf vmlinuz-%{KVERREL} kernel-boot
702         ln -sf vmlinuz-%{KVERREL} kernel-bootsmp
703 }
704 popd > /dev/null
705
706 # ask for a reboot
707 mkdir -p /etc/planetlab
708 touch /etc/planetlab/update-reboot
709
710 %post devel
711 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
712 if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then
713   pushd /usr/src/kernels/%{KVERREL}-%{_target_cpu} > /dev/null
714   /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done
715   popd > /dev/null
716 fi
717
718 %post xenU
719 [ ! -x /usr/sbin/module_upgrade ] || /usr/sbin/module_upgrade
720 [ ! -x /sbin/ldconfig ] || /sbin/ldconfig -X
721
722 %post xenU-devel
723 [ -f /etc/sysconfig/kernel ] && . /etc/sysconfig/kernel
724 if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ] ; then
725   pushd /usr/src/kernels/%{KVERREL}-xenU-%{_target_cpu} > /dev/null
726   /usr/bin/find . -type f | while read f; do hardlink -c /usr/src/kernels/*FC*/$f $f ; done
727   popd > /dev/null
728 fi
729
730 %post uml-modules
731 depmod -ae %{KVERREL}uml
732
733 %preun
734 /sbin/modprobe loop 2> /dev/null > /dev/null  || :
735 /sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}
736
737 %preun xenU
738 /sbin/modprobe loop 2> /dev/null > /dev/null  || :
739 /sbin/new-kernel-pkg --rmmoddep --remove %{KVERREL}xenU
740
741 %preun uml-modules
742 rm -f /lib/modules/%{KVERREL}uml/modules.*
743
744
745 ###
746 ### file lists
747 ###
748
749 %if %{buildup}
750 %files 
751 %defattr(-,root,root)
752 /%{image_install_path}/vmlinuz-%{KVERREL}
753 /boot/System.map-%{KVERREL}
754 /boot/config-%{KVERREL}
755 %dir /lib/modules/%{KVERREL}
756 /lib/modules/%{KVERREL}/kernel
757 /lib/modules/%{KVERREL}/build
758 /lib/modules/%{KVERREL}/source
759 /lib/modules/%{KVERREL}/extra
760 /lib/modules/%{KVERREL}/updates
761
762 %files devel
763 %defattr(-,root,root)
764 %verify(not mtime) /usr/src/kernels/%{KVERREL}-%{_target_cpu}
765 %endif
766
767 %if %{builduml} && "%{_target_cpu}" == "i686"
768 %files uml
769 %defattr(-,root,root)
770 %{_bindir}/linux
771
772 %files uml-devel
773 %defattr(-,root,root)
774 %verify(not mtime) /usr/src/kernels/%{KVERREL}-uml-%{_target_cpu}
775 /usr/src/kernels/%{KVERREL}uml-%{_target_cpu}
776
777 %files uml-modules
778 %defattr(-,root,root)
779 /boot/System.map-%{KVERREL}uml
780 /boot/config-%{KVERREL}uml
781 %dir /lib/modules/%{KVERREL}uml
782 /lib/modules/%{KVERREL}uml/kernel
783 /lib/modules/%{KVERREL}uml/build
784 /lib/modules/%{KVERREL}uml/source
785 /lib/modules/%{KVERREL}uml/extra
786 /lib/modules/%{KVERREL}uml/updates
787 %endif
788
789 %if %{buildxen} && "%{_target_cpu}" == "i686"
790 %files xenU
791 %defattr(-,root,root)
792 /%{image_install_path}/vmlinuz-%{KVERREL}xenU
793 /boot/System.map-%{KVERREL}xenU
794 /boot/config-%{KVERREL}xenU
795 %dir /lib/modules/%{KVERREL}xenU
796 /lib/modules/%{KVERREL}xenU/kernel
797 /lib/modules/%{KVERREL}xenU/build
798 /lib/modules/%{KVERREL}xenU/source
799 /lib/modules/%{KVERREL}xenU/extra
800 /lib/modules/%{KVERREL}xenU/updates
801 /etc/ld.so.conf.d/kernelcap-%{KVERREL}.conf
802
803 %files xenU-devel
804 %defattr(-,root,root)
805 %verify(not mtime) /usr/src/kernels/%{KVERREL}-xenU-%{_target_cpu}
806 /usr/src/kernels/%{KVERREL}xenU-%{_target_cpu}
807 %endif
808
809 %files vserver
810 %defattr(-,root,root)
811 # no files
812
813 # only some architecture builds need kernel-doc
814
815 %if %{builddoc}
816 %files doc
817 %defattr(-,root,root)
818 %{_datadir}/doc/kernel-doc-%{kversion}/Documentation/*
819 %dir %{_datadir}/doc/kernel-doc-%{kversion}/Documentation
820 %dir %{_datadir}/doc/kernel-doc-%{kversion}
821 %endif
822
823 %if %{headers}
824 %files headers
825 %defattr(-,root,root)
826 %dir %{_includedir}
827 %{_includedir}/*
828 %endif
829
830 %changelog
831 * Tue Jun 15 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-14
832 - fix softlock problems that causes kernel panics
833
834 * Thu May 27 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-13
835 - Bump to 2.6.27.47
836
837 * Wed May 05 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-12
838 - support 82567LM-3 Gigabit Network devices
839
840 * Wed May 05 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-11
841 - Drop VServer version string from package name otherwise RPM refuses to upgrade to newer tagged version saying that 0.36.8.9 > 0.36.4.10
842
843 * Tue May 04 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-10
844 - Revert to vs2.3.0.36.4
845
846 * Tue Apr 27 2010 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-27-9
847 - config for wextoolbox OK
848 - upgrade to patch-2.6.27.46-vs2.3.0.36.8
849 - turn off delta-pivot-fix01.diff (which was tweaked btw)
850
851 * Wed Apr 07 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-8
852 - chopstix fixes & cleanups
853
854 * Fri Apr 02 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-7
855 - Update to 2.6.27.46
856
857 * Mon Feb 15 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-6
858 - support Ext4 in order to boot f12
859 - fix "vcontext: pivot_root(): Invalid argument errors" while creating a guest with f12
860
861 * Mon Feb 15 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-5
862 - Update to 2.6.27.45
863
864 * Mon Feb 15 2010 S.ÇaÄŸlar Onur <caglar@cs.princeton.edu> - linux-2.6-27-4
865 - Tagging trunk
866
867 * Tue May 12 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-27-3
868 - new tuntap patch available but not enabled
869 - mac80211 and iwlwifi are now mainstream, no ext. sources anymore
870 - new egre patch
871 - various changes in the config about netns and scheduler ...
872 - gnuradio gets a specific config
873 - enable patch about 64bits adresses and cardbus
874
875 * Tue Mar 24 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-27-2
876 - cleaned up obsolete (2.6.22) configs
877 - added gnuradio config links
878 - fix for building headers package (remove .cmd files)
879
880 * Tue Mar 10 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-27-1
881 - untested feature-complete version, but for the scheduler that is still missing
882
883 * Thu Jan 08 2009 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-22-32
884 - support building on fedora 10
885
886 * Tue Dec 02 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-31
887 - add patches for m-lab and drl
888
889 * Tue Nov 11 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-30
890 - Use Intel's e1000e driver.
891
892 * Thu Oct 02 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-22-29
893 - added drivers for OPTION's globetrotter (gt 3g+ emea) umts cards
894 - + cleanup outdated configs
895
896 * Wed Sep 17 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-28
897 - Recovering a hunk that I accidentally ommited out of the last commit. Should not entail retesting, because the commits
898 - were unrelated.
899
900 * Sun Sep 14 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-27
901 - Fixing the accounting issue that causes certain connections to be misaccounted, and that causes NM/peercreds to
902 - intermittently break.
903
904 * Wed Sep 10 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-22-26
905 - patch for building on f9/gcc-4.3, no functional change on other distros
906
907 * Sun Aug 17 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-25
908 - FUSE support.
909
910 * Tue Aug 12 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-24
911 - Enable nmi watchdog by default.
912
913 * Mon Aug 04 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-23
914 - Fixed a bug in my previous commit.
915
916 * Mon Aug 04 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-22
917 - * 1 fix for using udp/listening sockets via raw
918 - * 1 fix to help codemux divide traffic in PlanetFlow
919
920 * Fri Aug 01 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-21
921 - Codemux calls setsockopt/SO_PEERCRED to set peer credentials on a socket, so that the connections it proxies to its clients are tagged for PlanetFlow. This hunk got lost somewhere along the way.
922
923 * Thu Jul 31 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-20
924 - Removed a debugging statement. Shows up a lot in the debug logs.
925
926 * Wed Jul 30 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-19
927 - Unbroke peercred setting.
928
929 * Mon Jul 28 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-18
930 - Now you can write your own TCP using packet sockets. As a side effect, tcptraceroute runs to completion including the
931 - last hop.
932
933 * Mon Jul 28 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-17
934 - Optimize packet socket support to eliminate a packet copy.
935
936 * Sun Jul 27 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-16
937 - Missed this header file, which broke the compile.
938 - I'll be doing another tag to include an optimization I left out of this version. This version is for Build only.
939
940 * Sun Jul 27 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-15
941 - Fixes to tcpdump-related problems reported recently.
942
943 * Wed Jul 23 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - linux-2.6-22-14
944 - added fix to process visibility so when ncontext/vcontext  run netstat in
945 - xid=1, it can see all ports &  processes.
946
947 * Mon Jul 21 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-13
948 - fix for tcpdump/tcp payloads
949
950 * Tue Jul 15 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-12
951 - * Bugfix in tuntap
952 - * Attempt to fix TCP-payload-related problems with tcpdump
953
954 * Wed Jul 09 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-11
955 - * Split up VNET+ module into its component patches
956 - * Added tun/tap support
957
958 * Tue Jul 08 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-10
959 - Filling a statically allocated buffer cannot fail, right?
960
961 * Wed Jun 25 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-9
962 - Enable the hangcheck timer driver, and build it in to the kernel.
963 - Dump relevant data on the scheduler bug instead of BUGing.
964
965 * Sat Jun 07 2008 Sapan Bhatia <sapanb@cs.princeton.edu> - linux-2.6-22-8
966 - * Partial fix for the UDP-packet-pollution problem
967 - * Support for PF_PACKET sockets
968 - * Support for SOCK_PACKET sockets
969 - * Disabled Chopstix with mutexes
970 - * Tested VNET+ under heavy loads
971
972
973
974 * Fri May 16 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - linux-2.6-22-7
975 - Bringing this fix in for tcpdump and  ping
976
977
978 * Fri May 09 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - linux-2.6-22-6
979 - Updated configuration to include COW again.
980
981 - Patches from Sapan to fix ping losses.
982
983 - Still need help with tcpdump traffic.
984
985
986 * Tue May 06 2008 Daniel Hokka Zakrisson <daniel@hozac.com> - linux-2.6-22-5
987 - Patch needs to be applied.
988
989 * Mon May 05 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - linux-2.6-22-4
990
991
992 * Thu Apr 24 2008 Thierry Parmentelat <thierry.parmentelat@sophia.inria.fr> - linux-2.6-22-3
993 - Fix bug with looping in schedule()
994
995 * Wed Apr 23 2008 Stephen Soltesz <soltesz@cs.princeton.edu> - linux-2.6-22-2
996 - Includes changes from Sapan/Andy regarding the scheduler and vnet bugs.
997 - Should be safe to try a second deployment.
998
999
1000 * Tue Jul 11 2006 Dave Jones <davej@redhat.com> [2.6.17-1.2142_FC4]
1001 - 2.6.17.4
1002 - Disable split pagetable lock.
1003
1004 * Wed Jul  5 2006 Dave Jones <davej@redhat.com>
1005 - Get rid of stack backtrace on panic, which in most
1006   cases actually caused a loss of info instead of a gain.
1007
1008 * Fri Jun 30 2006 Dave Jones <davej@redhat.com> [2.6.17-1.2141_FC4]
1009 - 2.6.17.3
1010
1011 * Fri Jun 30 2006 Dave Jones <davej@redhat.com> [2.6.17-1.2140_FC4]
1012 - 2.6.17.2
1013 - Fix up the alsa list_add bug.
1014
1015 * Mon Jun 26 2006 Dave Jones <davej@redhat.com>
1016 - Fix up various stupidities incurred by the last big rebase.
1017   - Reenable SMP x86-64 builds.
1018   - Reenable SMBFS.
1019 - Enable PCI fake hotplug driver.
1020 - Enable gameport/joystick on i586 builds. (#196581)
1021
1022 * Sat Jun 24 2006 Dave Jones <davej@redhat.com>
1023 - Enable profiling for 586 kernels.
1024
1025 * Fri Jun 23 2006 Dave Jones <davej@redhat.com> [2.6.17-1.2139_FC4]
1026 - Rebuild with slab debug off.
1027
1028 * Tue Jun 20 2006 Dave Jones <davej@redhat.com> [2.6.17-1.2138_FC4]
1029 - 2.6.17.1
1030
1031 * Mon Jun  5 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2115_FC4]
1032 - 2.6.16.20
1033
1034 * Tue May 30 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2114_FC4]
1035 - 2.6.16.19
1036
1037 * Mon May 29 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2113_FC4]
1038 - Improved list_head debugging.
1039
1040 * Tue May 23 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2112_FC4]
1041 - 2.6.16.18
1042
1043 * Sat May 20 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2111_FC4]
1044 - 2.6.16.17
1045
1046 * Wed May 10 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2110_FC4]
1047 - 2.6.16.16
1048
1049 * Tue May  9 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2109_FC4]
1050 - 2.6.16.15
1051 - make 16C950 UARTs work (again). (#126403)
1052 - Fix exec-shield default, which should fix a few programs that
1053   stopped running.
1054
1055 * Thu May  4 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2108_FC4]
1056 - 2.6.16.14
1057
1058 * Tue May  2 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2107_FC4]
1059 - 2.6.16.13
1060
1061 * Mon May  1 2006 Dave Jones <davej@redhat.com>
1062 - 2.6.16.12
1063
1064 * Tue Apr 25 2006 Dave Jones <davej@redhat.com>
1065 - Fix up SCSI errors with mymusix usb mp3 player (#186187)
1066
1067 * Mon Apr 24 2006 Dave Jones <davej@redhat.com>
1068 - 2.6.16.11
1069
1070 * Wed Apr 19 2006 Dave Jones <davej@redhat.com>
1071 - Enable PCI MSI support.
1072
1073 * Tue Apr 18 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2096_FC4]
1074 - 2.6.16.9
1075
1076 * Tue Apr 18 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2093_FC4]
1077 - 2.6.16.7
1078
1079 * Mon Apr 17 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2092_FC4]
1080 - 2.6.16.6
1081
1082 * Sun Apr 16 2006 Dave Jones <davej@redhat.com>
1083 - 2.6.16.5
1084
1085 * Fri Apr  7 2006 Dave Jones <davej@redhat.com>
1086 - 2.6.16.2
1087
1088 * Tue Apr  4 2006 Dave Jones <davej@redhat.com>
1089 - Reenable non-standard serial ports. (#187466)
1090 - Reenable snd-es18xx for x86-32 (#187733)
1091
1092 * Thu Mar 30 2006 Dave Jones <davej@redhat.com>
1093 - ship the .kernelrelease file in -devel too.
1094 - Disable EDAC debug.
1095
1096 * Tue Mar 26 2006 Dave Jones <davej@redhat.com> [2.6.16-1.2069_FC4]
1097 - 2.6.16.1
1098
1099 * Mon Mar 25 2006 Dave Jones <davej@redhat.com>
1100 - Include patches posted for review for inclusion in 2.6.16.1
1101 - Updated new audit msg types.
1102 - Reenable HDLC driver (#186257)
1103 - Make acpi-cpufreq 'sticky'
1104 - Fix broken x86-64 32bit vDSO (#186924)
1105
1106 * Tue Mar 21 2006 Dave Jones <davej@redhat.com>
1107 - Improve spinlock scalability on big machines.
1108
1109 * Mon Mar 20 2006 Dave Jones <davej@redhat.com>
1110 - Sync with FC5's 2.6.16 kernel.
1111 - Update Tux & Exec-shield to latest.
1112
1113
1114 %define module_current_branch 22