> Here is a snippet from my trace log (slightly reformatted):
> 61913.51 0.66 do_IRQ pid(132->309)
> 61914.17 2.65 __switch_to pid(309)
> int this_cpu = smp_processor_id();
> struct task_struct *tsk;
>
> tsk = current;
> if (preemption_goodness(tsk, p, this_cpu) > 0)
> tsk->need_resched = 1;
> #endif
> }
> ----------------
>
> Is my theory valid?
yep - 2.3 already has the fix:
int this_cpu = smp_processor_id();
struct task_struct *tsk;
tsk = cpu_curr(this_cpu);
if (preemption_goodness(tsk, p, this_cpu) > 0)
tsk->need_resched = 1;
-- mingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/