[PATCH 2/3] wait_task_inactive: fix the !CONFIG_SMP version

From: Oleg Nesterov
Date: Wed Jul 30 2008 - 13:06:57 EST


The semantics of wait_task_inactive() was changed, update the !SMP
version accordingly.

Signed-off-by: Oleg Nesterov <oleg@xxxxxxxxxx>

--- 27/include/linux/sched.h~2_WTI_DUMMY 2008-07-30 13:12:48.000000000 +0400
+++ 27/include/linux/sched.h 2008-07-30 20:28:31.000000000 +0400
@@ -1880,7 +1880,9 @@ extern unsigned long wait_task_inactive(
static inline unsigned long wait_task_inactive(struct task_struct *p,
long match_state)
{
- return 1;
+ if (match_state && unlikely(p->state != match_state))
+ return 0;
+ return p->nvcsw | LONG_MIN; /* sets MSB */
}
#endif


--
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/