If you have nested mutexes in the API, people will use them.
Nested mutexes can be built with non-nested mutexes and condition variables. When there are good reasons to use nested mutexes, people can build them. Existing applications that rely on nested mutexes can use their home-grown nested mutexes.
So I think it is fine to remove nested mutexes.
Wan-Teh
