It means that the patch program can't apply a part of the patch because he can't figure out what needs to be modified. The patches can modify certain parts of a file, e.g: in line 10, replace "static void.." with "void...", then in line 324 change from "int a;" to "unsigned int a;". Take this for example:
Code:
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -52,6 +52,8 @@
* Frame buffer device initialization and setup routines
*/
+extern int vesafb_init_thread(void);
+
#define FBPIXMAPSIZE (1024 * 8)
static struct notifier_block *fb_notifier_list;
@@ -1155,6 +1157,10 @@ fbmem_init(void)
printk(KERN_WARNING "Unable to create fb cl[...]
fb_class = NULL;
}
+
+#if defined(CONFIG_FB_VESA_TNG) || defined(CONFIG_FB_VESA_TNG_MODULE)
+ vesafb_init_thread();
+#endif
return 0;
}
This patch file has two HUNKS: the first one starts with "@@ -52,6 +52,8 @@" and tells the patch file to add the new function between the comment and the #define. The second hunk follows: "@@ -1155,6 +1157,10 @@ fbmem_init(void)" and adds the #if defined part.
If the file to be patched is different than the files the patch is supposed to work for - as in, instead of "#define FBPIXMAPSIZE (1024 * 8)" the patch app finds "#define SOMETHINGELSE 1", that hunk will not be patched as patch does not know how to handle this difference - the result is "HUNK #1 FAILED at ...".
If you have experience in C++, you can ignore this errors and try to manually patch the files (looking at the .rej file and the half-patched file). Sometimes the hunks fail just because the patch is already applied or someone corrected a typo in a comment.