Priority Ceiling for SMP?
From: Bernhard Kuhn <hidden>
Date: 2007-11-08 17:27:22
Hi! I'm thinking about adding the priority ceiling protocol to -rt (implemented in a way so that you can select between priority inheritance and priority ceiling with the kernel configurator). Since this mechanism inherently avoids dead-locks, it could be helpful for applications that need high safety integrity levels!? The priority ceiling protocol is basically no rocket science and implemented for other OSes for a while, so it should be a no-brainer get it going with Linux. However. I'm struggling at the point where it comes to SMP: it seems like when a task acquires a lock, it is necessary to un-schedule any active tasks on other cores sharing the same lock. This would be very inefficient, of course, because tasks sharing a lock couldn't run in parallel on different CPUs. Does anybody know of any other priority inversion and dead-lock avoidance mechanism that would efficiently work on SMP? Feedback is highly appreciated! regards Bernhard