I'm trying to compile a custom kernel where i will include fbsplash and suspend2 patches only on 2.6.16 (patched to 18.104.22.168) kernel, so I've downloaded http://dev.gentoo.org/~spock/projects/g … 6.16.patch and http://www.suspend2.net/downloads/all/s … 16.tar.bz2 but when i apply suspend2 i can't apply fbsplash
[wael@nasreddine ../src/linux-2.6.16]$ patch -Np1 -i ../fbsplash-0.9.2-r5-2.6.16-rc2.patch patching file Documentation/fb/00-INDEX patching file Documentation/fb/splash.txt patching file drivers/Makefile patching file drivers/video/Kconfig patching file drivers/video/Makefile patching file drivers/video/cfbsplash.c patching file drivers/video/console/bitblit.c patching file drivers/video/console/fbcon.c patching file drivers/video/fbcmap.c patching file drivers/video/fbsplash.c patching file drivers/video/fbsplash.h patching file include/linux/console_splash.h patching file include/linux/console_struct.h patching file include/linux/fb.h patching file include/linux/sysctl.h Hunk #1 FAILED at 151. 1 out of 1 hunk FAILED -- saving rejects to file include/linux/sysctl.h.rej patching file kernel/sysctl.c Hunk #1 succeeded at 89 (offset -7 lines). Hunk #2 succeeded at 419 (offset -5 lines).
I know about Archck guys , just have another purpose for this kernel
Whenever a patch fails for me, I play around with the -pX number. I dunno what it is, but increasing the number seems to work most of the times. Sorry for the noob answer.
A bus station is where a bus stops.
A train station is where a train stops.
On my desk I have a workstation.
adjusting the -p will not assist here.
I'll upload a patch for you with all that in it that will apply cleanly to 2.6.16.
In the meantime though, you could try ArchCK, http://iphitus.loudas.com/archck.php as it contains what you want.
I suspect, G, that you wanted to do this yourself, rather than have it done for you - no offense, iph. - in which case you need to inspect the .rej file(s) created when you get a hunk failure - in the example above, include/linux/sysctl.h.rej - and compare it/them to the vanilla code and the two patches.. It's likely that sysctl.h was patched for suspend2 first, and then fbsplash came along to patch the same file, but of course it it was no longer the file it used to be, so the patch failed. Clear as mud, right?
You could also try something very simple - apply the patches in the reverse order. It might or might not work.
Obviously, iph is the expert here, so you can rely on what he gives you - but you won't learn as much that way....
@iphitus, For sure man i know already about Archck, and actually first i tried ur 2.6.16 broken out, but i removed the ck, patches, cat them all into one and apply, and of course it failed on suspend2, so here i went looking for suspend 2 myself and i used again ur broken out but it failed, so I've made an empty folder, and i went to the sites and downloaded the patches, applied them on clean code and it failed... Maybe suspend2 is for 2.6.16 and not for 22.214.171.124 ?? coz actually i was applying upsteam patche first, then suspend 2 then fbsplash...
@tomk, actually yes, i want to learn more and more so actually i'm trying to create an OS myself just for learning purpose at least get a console, play with initscripts, kernel, inittab, pacman.. for the moment i changed pacman a lot, i changed the extension, i took a lot of ideas from Frugalware like up2date but made it myself, compiled the whole base and i failed on the kernel step, so untar initrd -> untar arch stock kernel -> mknod of everything else and it boots ... anyway ur idea is cool, actually i do that a lot, but i felt like asking the questions coz i was supposing that suspend2 and fbsplash guys make their patches compatible..
-pnum or --strip=num
Strip the smallest prefix containing num leading slashes from each file name found in the patch file. A sequence of one or more
adjacent slashes is counted as a single slash. This controls how file names found in the patch file are treated, in case you keep
your files in a different directory than the person who sent out the patch. For example, supposing the file name in the patch file
setting -p0 gives the entire file name unmodified, -p1 gives
without the leading slash, -p4 gives
and not specifying -p at all just gives you blurfl.c. Whatever you end up with is looked for either in the current directory, or
the directory specified by the -d option.
so Np1 will consider all pathes in patch a (-1) path, ex. a/path/to/file = path/to/file in p1 mode
iphitus & tomk, Thank you
My suspend patch in my broken out wont apply without a -ck patch underneath it. Ditto for my fbsplash patch.
Otherwise, patch your kernel with suspend2 FIRST, and then patch fbsplash. fbsplash will fail one hunk, in include/linux/sysctl.h
Open up include/linux/sysctl.h, scroll down to the KERN_SOMETHING=55 statements, and add one at the end with KERN_FBSPLASH=XX, where XX is a number one bigger than the last one in that structure.
eg for example:
KERN_SETUID_DUMPABLE=69, /* int: behaviour of dumps for setuid core */ KERN_SPIN_RETRY=70, /* int: number of spinlock retries */ };
KERN_SETUID_DUMPABLE=69, /* int: behaviour of dumps for setuid core */ KERN_SPIN_RETRY=70, /* int: number of spinlock retries */ KERN_FBSPLASH=71, };
Although, there will be some different numbers and names as youve applied suspend2. But you get the idea