As the patches we have downloaded are compressed, the first thing to do is
uncompress them with the
bzip2
command:
$
bzip2 -dv patch-2.6.17.9-10.bz2
patch-2.6.17.9-10.bz2: done
$
bzip2 -dv patch-2.6.17.10-11.bz2
patch-2.6.17.10-11.bz2: done
$
ls -F
good_config linux-2.6.17.9/ patch-2.6.17.10-11 patch-2.6.17.9-10
Now we need to apply the patch files to the kernel directory. Go into the
directory:
$
cd linux-2.6.17.9
and run the
patch
program to apply the first patch
moving the source tree from the 2.6.17.9 to the 2.6.17.10 release:
$
patch -p1 < ../patch-2.6.17.9-10
patching file Makefile
patching file block/elevator.c
patching file fs/udf/super.c
patching file fs/udf/truncate.c
patching file include/net/sctp/sctp.h
patching file include/net/sctp/sm.h
patching file net/sctp/sm_make_chunk.c
patching file net/sctp/sm_statefuns.c
patching file net/sctp/socket.c
Verify that the patch really did work properly and that there are no errors
or warnings in the output of the patch program. It is also a good idea to
look at the Makefile of the kernel to see the kernel
version:
$
$ head -n 5 Makefile
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 17
EXTRAVERSION = .10
NAME=Crazed Snow-Weasel
Now that the kernel is at the 2.6.17.10 release level, do the same thing as
before and apply the patch to bring it up to the 2.6.17.11 level:
$
patch -p1 < ../patch-2.6.17.10-11
patching file Makefile
patching file arch/ia64/kernel/sys_ia64.c
patching file arch/sparc/kernel/sys_sparc.c
patching file arch/sparc64/kernel/sys_sparc.c
patching file drivers/char/tpm/tpm_tis.c
patching file drivers/ieee1394/ohci1394.c
patching file drivers/md/dm-mpath.c
patching file drivers/md/raid1.c
patching file drivers/net/sky2.c
patching file drivers/pci/quirks.c
patching file drivers/serial/Kconfig
patching file fs/befs/linuxvfs.c
patching file fs/ext3/super.c
patching file include/asm-generic/mman.h
patching file include/asm-ia64/mman.h
patching file include/asm-sparc/mman.h
patching file include/asm-sparc64/mman.h
patching file kernel/timer.c
patching file lib/spinlock_debug.c
patching file mm/mmap.c
patching file mm/swapfile.c
patching file net/bridge/netfilter/ebt_ulog.c
patching file net/core/dst.c
patching file net/core/rtnetlink.c
patching file net/ipv4/fib_semantics.c
patching file net/ipv4/netfilter/arp_tables.c
patching file net/ipv4/netfilter/ip_tables.c
patching file net/ipv4/netfilter/ipt_ULOG.c
patching file net/ipv4/route.c
patching file net/ipx/af_ipx.c
patching file net/netfilter/nfnetlink_log.c
Again verify that the output of the patch program did not show any errors
and look at the Makefile:
$
head -n 5 Makefile
VERSION = 2
PATCHLEVEL = 6
SUBLEVEL = 17
EXTRAVERSION = .11
NAME=Crazed Snow-Weasel
Now that the source code is successfully updated to the version you wish to
use, it is a good idea to go back and change the directory name to refer to
the kernel version number so that confusion does not occur at a later time:
$
cd ..
$
mv linux-2.6.17.9 linux-2.6.17.11
$
ls -F
good_config linux-2.6.17.11/ patch-2.6.17.10-11 patch-2.6.17.9-10