- The tools/regression/posixsem2 test passes.
- A simple test program that just does sem_init(.., 1), sem_wait/sem_post
loop in a single thread works fine (and makes no system calls in the
wait/post loop).
- A slightly more complicated program that creates a process-shared
semaphore in a MAP_SHARED | MAP_ANON region and forks a child process
for each CPU to do a similar wait/post loop also works fine. It makes
a few system calls during startup when the child processes block on the
semaphore before the main thread finishes forking them so it can do
the initial sem_post's to release them and handle the loop for CPU 0.
This also works fine. I could make a variant of this that uses threads
instead of child processes if there is interest.