[Breaking change] Move nxmutex to sched

2023-03-30 Thread 奇诺
Hi, all: I submitted a PR regarding mutex, the changes are as follows: 1. Move some mutex operations to sched;2. Add mutex_clocklock, mutex_set_protocol, and mutex_get_protocol interfaces;3. Remove cancellation point operations in mutex because it is not a cancellation point. In addition, there

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Gregory Nutt
On 3/30/2023 1:57 AM, 奇诺 wrote: Hi, all: I submitted a PR regarding mutex, the changes are as follows: 1. Move some mutex operations to sched;2. Add mutex_clocklock, mutex_set_protocol, and mutex_get_protocol interfaces;3. Remove cancellation point operations in mutex because it is not a cance

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Gregory Nutt
3. Move priority inheritance from nxsem to nxmutex, and optimize the performance of priority inheritance; That will break every a lot of people's code.  There is probably a lot of application logic that depends on priority inheritance working on counting semaphores.  Removing that will prob

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Nathan Hartman
On Thu, Mar 30, 2023 at 9:49 AM Gregory Nutt wrote: > > >> 3. Move priority inheritance from nxsem to nxmutex, and optimize the > >> performance of priority inheritance; > > > > That will break every a lot of people's code. There is probably a lot > > of application logic that depends on priorit

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread David S. Alessio
All, In his Confluence paper on "Signaling Semaphores and Priority Inheritance”, Brennan Ashton’s analysis is both thorough and accurate; and his conclusion that There should then be no priority inheritance operations on this semaphore that is used for signalling. is unassailable. It’s impor

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Gregory Nutt
I have mixed feelings myself and hope that we get some consensus through dialog. One one hand, it is important to stay faithful to documented standard and undocumented conventions for the use the a POSIX/Unix systems. But on the other hand, unlike other OSs that strive toward standard conforma

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Gregory Nutt
> In his Confluence paper on "Signaling Semaphores and Priority Inheritance”, Brennan Ashton’s analysis is both thorough and accurate; ... Minor fix.  I wrote the paper, Brennan converted the Confluence page from an older DocuWiki page > In any RTOS, priority inversion happens, and it’s OK, a

Re:Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread 奇诺
>My opinion is that we have to respect the requirements for deterministic >real-time behavior, even though that implies the addition of certain >non-standard interfaces. Otherwise we lose our identity as a real time >operating system and the applications I am doing with NuttX (and I'm sure >man

Re: [Breaking change] Move nxmutex to sched

2023-03-30 Thread Tomek CEDRO
On Fri, Mar 31, 2023 at 12:23 AM Gregory Nutt wrote: > > > In his Confluence paper on "Signaling Semaphores and Priority > Inheritance”, Brennan Ashton’s analysis is both thorough and accurate; ... > > Minor fix. I wrote the paper, Brennan converted the Confluence page > from an older DocuWiki p