|
发表于 2003-8-9 00:09:47
|
显示全部楼层
yes, the ac4 patch change too much. so after several hours try, i get a patch. but i do not take any responsibilty, you had better try it on a test system without important data. at least i can boot up my laptop with this patch.
try this
1) get a vanilla 2.4.21 kernel
2) patch ac4 patch, should be succ
3) patch the patch i give to u instead of that preempt.
4) config, compile, and boot
i get this patch by doing these
1) the problems are in ldt.c and sched.c. the ldt.c is easy to solve since the down_write changed to down. so modify it manually
2) diff the preempt patch
preempt-kernel-rml-2.4.19-2.patch 09-Sep-2002 17:06 74k
preempt-kernel-rml-2.4.20-3.patch 13-Apr-2003 16:08 96k
preempt-kernel-rml-2.4.20-ac1-1.patch 10-Dec-2002 23:55 83k
preempt-kernel-rml-2.4.21-1.patch 17-Jun-2003 17:42 98k
find that there are little change in sched.c
3) diff the patched sched.c in 2.4.20-ac2 and 2.4.20-ac4. they are exactly the same. so ac does not change the sched.c file from 2.4.20 to 2.4.21.
4) from 2) and 3) so we can safely borrow the sched.c file from preempt-kernel-rml-2.4.20-ac1-1.patch.
5) modify an error in sched.c about spin_unlock_no_resched.
6) comppile and boot succ
7) make distclean and manually delete the lib/generatecrctable file(sth like thsi name, i forget the exact name)
diff it with a 2.4.21-ac4 kernel. get the patch.
if u really need this patch, do a test on it thoroughly. |
|