Sven-Thorsten Dietrich <sdietrich@xxxxxxxxxx> wrote in message news:<2Nir3-4iC-13@xxxxxxxxxxxxxxxx>...
Announcing the availability of prototype real-time (RT)
enhancements to the Linux 2.6 kernel.
Reading the sources i believe that __p_mutex_up is not constant time
operation because of __p_mutex_down....
It is clear that
__p_mutex_down is not constant time operation because of insertion
into the priority-sorted sleepers list. However both __p_mutex_down
and __p_mutex_up are synchronize on the same global spinlock
(m_spin_lock) .... so if the __p_mutex_down is holding this spinlock
while inserting NO other process(or) is able to perform any __p_mutex
operation...
Maybe the better idea would be to have a per-mutex spinlock? or even
better, given that the task->rt_priority have a finite range maybe each
mutex can have a table of sleeper lists indexed by rt_priority?
Vadim
-
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/