[PATCH] rq->curr==p not equivalent to task_running(rq,p)

From: Joe Korty
Date: Tue Jan 13 2004 - 18:05:22 EST


task_running(rq,p) is equivalent to (rq->curr == p) only for some
architectures. Boot tested on i386.

Regards,
Joe

diff -Nua 2.6/kernel/sched.c.0 2.6/kernel/sched.c
--- 2.6/kernel/sched.c.0 2004-01-13 17:53:34.000000000 -0500
+++ 2.6/kernel/sched.c 2004-01-13 17:47:33.000000000 -0500
@@ -2062,7 +2062,7 @@
* our priority decreased, or if we are not currently running on
* this runqueue and our priority is higher than the current's
*/
- if (rq->curr == p) {
+ if (task_running(rq, p)) {
if (p->prio > oldprio)
resched_task(rq->curr);
} else if (p->prio < rq->curr->prio)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/