Re: any fairness in NTPL pthread mutexes?

From: Lee Revell
Date: Wed Nov 02 2005 - 13:54:24 EST


On Wed, 2005-11-02 at 17:47 +0000, James Courtier-Dutton wrote:
> Christopher Friesen wrote:
> >
> > I'm using NPTL.
> >
> > If I have a pthread mutex currently owned by a task, and two other tasks
> > try to lock it, when the mutex is unlocked, are there any rules about
> > the order in which the waiting tasks get the mutex (ie priority, FIFO,
> > etc.)?
> >
> > Thanks,
> >
> > Chris
> > -
>
> There is no fairness at all. It's currently not designed to be fair
> either. The reasons for this I can't remember, but there was talk at the
> KS about it and I just remember the answer. I think it had something to
> do with "If we implement fairness, general locking performance will drop
> and we prefer performance over fairness."
>
> The solution is to modify your program so as not to rely on fairness.

Or try RT-NPTL + realtime and robust mutexes kernel patches. The
problem and solution is described in more detail here:

http://developer.osdl.org/dev/robustmutexes/src/fusyn.hg/Documentation/fusyn/fusyn-why.txt

Lee

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