[PATCH] Documentation: Small applying-patches.txt update

Minor update to Documentation/applying-patches.txt

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Jesper Juhl 2006-01-08 01:03:38 -08:00 committed by Linus Torvalds
parent 44fce35f29
commit 90f2447d08
1 changed files with 18 additions and 11 deletions

View File

@ -2,7 +2,8 @@
Applying Patches To The Linux Kernel Applying Patches To The Linux Kernel
------------------------------------ ------------------------------------
(Written by Jesper Juhl, August 2005) Original by: Jesper Juhl, August 2005
Last update: 2005-12-02
@ -118,7 +119,7 @@ wrong.
When patch encounters a change that it can't fix up with fuzz it rejects it When patch encounters a change that it can't fix up with fuzz it rejects it
outright and leaves a file with a .rej extension (a reject file). You can outright and leaves a file with a .rej extension (a reject file). You can
read this file to see exactely what change couldn't be applied, so you can read this file to see exactly what change couldn't be applied, so you can
go fix it up by hand if you wish. go fix it up by hand if you wish.
If you don't have any third party patches applied to your kernel source, but If you don't have any third party patches applied to your kernel source, but
@ -127,7 +128,7 @@ and have made no modifications yourself to the source files, then you should
never see a fuzz or reject message from patch. If you do see such messages never see a fuzz or reject message from patch. If you do see such messages
anyway, then there's a high risk that either your local source tree or the anyway, then there's a high risk that either your local source tree or the
patch file is corrupted in some way. In that case you should probably try patch file is corrupted in some way. In that case you should probably try
redownloading the patch and if things are still not OK then you'd be advised re-downloading the patch and if things are still not OK then you'd be advised
to start with a fresh tree downloaded in full from kernel.org. to start with a fresh tree downloaded in full from kernel.org.
Let's look a bit more at some of the messages patch can produce. Let's look a bit more at some of the messages patch can produce.
@ -180,9 +181,11 @@ wish to apply.
Are there any alternatives to `patch'? Are there any alternatives to `patch'?
--- ---
Yes there are alternatives. You can use the `interdiff' program Yes there are alternatives.
(http://cyberelk.net/tim/patchutils/) to generate a patch representing the
differences between two patches and then apply the result. You can use the `interdiff' program (http://cyberelk.net/tim/patchutils/) to
generate a patch representing the differences between two patches and then
apply the result.
This will let you move from something like 2.6.12.2 to 2.6.12.3 in a single This will let you move from something like 2.6.12.2 to 2.6.12.3 in a single
step. The -z flag to interdiff will even let you feed it patches in gzip or step. The -z flag to interdiff will even let you feed it patches in gzip or
bzip2 compressed form directly without the use of zcat or bzcat or manual bzip2 compressed form directly without the use of zcat or bzcat or manual
@ -197,7 +200,7 @@ do the additional steps since interdiff can get things wrong in some cases.
Another alternative is `ketchup', which is a python script for automatic Another alternative is `ketchup', which is a python script for automatic
downloading and applying of patches (http://www.selenic.com/ketchup/). downloading and applying of patches (http://www.selenic.com/ketchup/).
Other nice tools are diffstat which shows a summary of changes made by a Other nice tools are diffstat which shows a summary of changes made by a
patch, lsdiff which displays a short listing of affected files in a patch patch, lsdiff which displays a short listing of affected files in a patch
file, along with (optionally) the line numbers of the start of each patch file, along with (optionally) the line numbers of the start of each patch
and grepdiff which displays a list of the files modified by a patch where and grepdiff which displays a list of the files modified by a patch where
@ -258,7 +261,7 @@ $ patch -p1 -R < ../patch-2.6.11.1 # revert the 2.6.11.1 patch
# source dir is now 2.6.11 # source dir is now 2.6.11
$ patch -p1 < ../patch-2.6.12 # apply new 2.6.12 patch $ patch -p1 < ../patch-2.6.12 # apply new 2.6.12 patch
$ cd .. $ cd ..
$ mv linux-2.6.11.1 inux-2.6.12 # rename source dir $ mv linux-2.6.11.1 linux-2.6.12 # rename source dir
The 2.6.x.y kernels The 2.6.x.y kernels
@ -433,7 +436,11 @@ $ cd ..
$ mv linux-2.6.12-mm1 linux-2.6.13-rc3-mm3 # rename the source dir $ mv linux-2.6.12-mm1 linux-2.6.13-rc3-mm3 # rename the source dir
This concludes this list of explanations of the various kernel trees and I This concludes this list of explanations of the various kernel trees.
hope you are now crystal clear on how to apply the various patches and help I hope you are now clear on how to apply the various patches and help testing
testing the kernel. the kernel.
Thank you's to Randy Dunlap, Rolf Eike Beer, Linus Torvalds, Bodo Eggert,
Johannes Stezenbach, Grant Coady, Pavel Machek and others that I may have
forgotten for their reviews and contributions to this document.