awww.. Don't say that. Ludovic is a nice guy.
Look. Suppose you have a SCHED_IDLE task which does this,
in the kernel:
down(&sem1);
down(&sem2); /* This sleeps */
Now, a SCHED_OTHER task does this, in user space:
for ( ; ; )
;
We're dead. The SCHED_IDLE task will never be scheduled,
and hence will never release sem1. The solution to this
problem is well known but, as Ludovic says, "not simple".
-
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/