On 1/16/09, Cassiel <raffaele.morelli(a)gmail.com> wrote:
Hi you all,
I am trying to compile a RT kernel after the recent fix by Adam Samson but
probably I am missing something.
I have saved this content in a text file (adam_patch)
--- linux-2.6.26/kernel/softirq.c_orig 2009-01-04 14:41:06.000000000 +0000
+++ linux-2.6.26/kernel/softirq.c 2009-01-04 14:41:49.000000000 +0000
@@ -657,7 +657,7 @@
local_irq_disable();
list = __get_cpu_var(tasklet_hi_vec).head;
__get_cpu_var(tasklet_hi_vec).head = NULL;
- __get_cpu_var(tasklet_hi_vec).tail = &__get_cpu_var(tasklet_vec).head;
+ __get_cpu_var(tasklet_hi_vec).tail = &__get_cpu_var(tasklet_hi_vec).head;
local_irq_enable();
__tasklet_action(a, list);
but when tryin to apply the patch...
agf:/usr/src/linux-source-2.6.26# patch -p1 -i adam_patch
patching file kernel/softirq.c
Hunk #1 FAILED at 657.
1 out of 1 hunk FAILED -- saving rejects to file kernel/softirq.c.rej
One thing you could do to find out the reason for the failure is to
see if the seven lines starting at line 657 in softirq.c are indeed
what the patch file (minus the line starting with '+', and the '-'
sign at the beginning of the previous line) contains. If so, you could
even try to manually change
__get_cpu_var(tasklet_hi_vec).tail = &__get_cpu_var(tasklet_vec).head;
to
__get_cpu_var(tasklet_hi_vec).tail = &__get_cpu_var(tasklet_hi_vec).head;
If not, then you're dealing with the source of a different version of
the kernel. But even then, you may still find the above line nearby
(perhaps in a slightly different context) and try to change it.
HTH
Andras