Section 6.2. Applying the Patch


6.2. Applying the Patch

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 

Now 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 to avoid confusion 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 



Linux Kernel in a Nutshell
Linux Kernel in a Nutshell (In a Nutshell (OReilly))
ISBN: 0596100795
EAN: 2147483647
Year: 2004
Pages: 113

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net