[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

RE: [PATCH 2.5.64] Real-time futexes (priority inheritance/protec tion/robust support) take 4



"Perez-Gonzalez, Inaky" <inaky perez-gonzalez intel com> schrieb am 25.03.03 00:46:25:
[...]
> On condvars, I am not that sure - but to me it looks like they can use the
> same mechanism as mutexes. It even makes sense to enable PI/PP/robust.

I'm not sure that I'm not just missing and/or misunderstanding something...

AFAICS, with respect to condition variables, you'll have to provide priority 
ordered wakeup (and only within/for "scheduling allocation domains of size 
one"). That can be done using the current futex interface, I think. Given 
that condvars aren't locks (they don't have ownership) and that you simply 
can't know all the predicates and {potential} signalers... I guess, the only 
form of deadlocks that you can detect WRT condvars is the-entire-world-is-
going-to-halt-now (and within a single process only; process-shared stuff 
aside). Well, a rather interesting problem to solve is the implementation of 
a "realtime" condition variable that would handle futex overflows. Uhmm, for 
example, the one that I've tried to come up (just as a sort of "academic 
exercise"): http://www.terekhov.de/DESIGN-futex-CV.txt, 
http://www.terekhov.de/DESIGN-futex-CV.cpp, 
http://www.terekhov.de/DESIGN-futex-CV-with-async.cancelable-wait.txt) does 
NOT ensure priority ordered wakeup when the futex value has reached "end-of-
cycle" (and until it gets reset by the last "old" waiter).

regards,
alexander.

______________________________________________________________________________
Werden Sie kreativ! Jetzt HTML-Mails nicht nur schreiben - nein -
GESTALTEN, bei WEB.DE FreeMail! http://freemail.web.de/features/?mc=021141





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]