2011-06-20 14:27:47

by Monica Puig-Pey

[permalink] [raw]
Subject: synchronization mechanisms


Hello!
As I told you in previous questions I'm developing drivers using the
2.6.31-11-rt patch under ubuntu 10.04.
It is very important for me to know about which real time
synchronization mechanisms do I have.
I found the RT-mutexes, with priority inherintance, the plists (priority
lists) and now I'm looking for more information about semaphores. I
haven't found anything relevant in the code that I could know that they
work well under real time, having a priority queue of tasks waiting on
it. So I've made an easy example where I have 3 kernel threads with
different priorities each (60,70,80) in the semaphore queue. Then I see
is always the most priority kthread who wakes up the first. Good! It
seems to work as a RT semaphore!
In my code I have an error. I can use down_interruptible but I can't use
down_killable. Why is it?
Could anybody give me some help about semaphores in the rt-patch and
about any other synchronization mechanism thought for real time?

Thanks a lot

M?nica