![]() | ||||||||||
Messages in this thread |
On Tuesday 15 January 2002 08:10, george anzinger wrote: > Yes, this is classic priority inversion. It is here now, today with > semaphors which are held by code that blocks. If the code doesn't > block, why not use a spin lock? If it does, well the problem is here Because eg. other code that holds the semaphore needs to sleep > now. I suppose we could set a preempt disable around a semaphore if it > makes you feel better. It doesn't fix the problem if the task blocks It would make me feel better, but it would defeat the purpose. There's a lot of code holding semaphores. > AND it is legal to block while holding a preemption lock. But it's easier to fix. If you can preempt only by explicitely sleeping, you can beat priority invasion by changing basically only wake_up. If you can be preempted at random, you need to know who holds a semaphore. Regards Oliver - 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/ | |||||||||
| Last update: 2005-03-22 11:22 [from the cache] ©2003-2008 | ||||||||||