On 10/26/23 17:49, Steven Rostedt wrote: > On Thu, 26 Oct 2023 09:40:35 -0400 > Steven Rostedt <rostedt@xxxxxxxxxxx> wrote: > >> Hence, why I don't want to associate this with priority inheritance. The >> time constraint is a fundamental difference. > > Let me add one more fundamental difference here that makes this solution > different than priority inheritance and ceiling. > > PI and ceiling define the correctness of the system. If you get it wrong or > remove it, the system can be incorrect and lock up, fail deadlines, etc. > There's hundreds, if not thousands of papers mathematically defining the > correctness of PI, ceiling and proxy execution, as they are complex and > critical for the system to behave properly. > > This feature is a performance boost only, and has nothing to do with > "correctness". That's because it has that arbitrary time where it can run a > little more. It's more like the difference between having something in > cache and a cache miss. This would cause many academics to quit and find a > job in sales if they had to prove the correctness of an algorithm that gave > you a boost for some random amount of time. The idea here is to help with > performance. If it exists, great, your application will likely perform > better. If it doesn't, no big deal, you may just have to deal with longer > wait times on critical sections. terminologies, terminologies.... those academic people :-) I think that this can also be seen as an extension of the non-preemptive mode to the user space, but... not entirely, it is a ceiling to the [ higher than fair/lower than RT ] prior? and it is not global. It is partitioned: once the section starts, it stays there, being preempted by RT/DL? [ trying to understand the implications of it ] > > This is why I do not want to associate this as another form of PI or > ceiling. > > -- Steve