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