[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

make-kpkg and kernel patches



I am trying to apply kernel patches with make-kpkg, but am running into
difficulties, particularly on repeated runs.

First, I am not able to find the .rej files when patches fail to apply. 
I thought this might have been from a subsequent make-kpkg clean, but
even without that, they're not there.  Are these automatically cleaned
out?  If so, how can I diagnose problems applying patches?

Second, the patches that apply on later runs differ from those on
earlier runs, as well as the success of the patches.  My preliminary
theory is that as soon as make-kpkg has an error while applying a patch,
it abandons attempting to apply all subsequent patches.  Is that
correct?

Here's an example, starting in new, just untarred directory (2.4.21):
 export PATCH_THE_KERNEL=YES
 make-kpkg --rootcmd fakeroot --revision rb.1 --append-to-version advncd
configure
results include
------------------------------------
START applying patch "Debian Logo"
Testing whether "Debian Logo" patch for 2.4.21 applies (dry run):
"Debian Logo" patch for 2.4.21 succeeded
Removing empty files after patching:
Done.
END applying patch "Debian Logo"
START applying patch "Linux device-mapper"
Testing whether "Linux device-mapper" patch for 2.4.21 applies (dry
run):
1 out of 2 hunks FAILED -- saving rejects to file mm/filemap.c.rej
"Linux device-mapper" patch for 2.4.21 does not apply cleanly
run-parts: /usr/src/kernel-patches/all//apply/device-mapper exited with
return code 1
---------------------------------
  make-kpkg --rootcmd fakeroot --revision rb.1 --append-to-version
advncd clean
 make-kpkg --rootcmd fakeroot --revision rb.1 --append-to-version advncd
configure
output is now
----------------------------------------------
START applying patch "Debian Logo"
Testing whether "Debian Logo" patch for 2.4.21 applies (dry run):
1 out of 1 hunk FAILED -- saving rejects to file
drivers/video/fbcon.c.rej
1 out of 1 hunk FAILED -- saving rejects to file
include/linux/linux_logo.h.rej
"Debian Logo" patch for 2.4.21 does not apply cleanly
run-parts: /usr/src/kernel-patches/all//apply/debianlogo exited with
return code 1
------------------------------------------
This time I looked for the .rej file before cleaning, but it still
wasn't there.

My guess is that the previous application of the patch is still in
place, causing the 2nd patch attempt to fail.

So what's going on?  And what's the right way to do repeated make-kpkg
runs in the presence of kernel patches?

Thanks.




Reply to: