This locking change is exactly the kind of thing we need performance data to accept. You've made the locking a lot harder to manage correctly on a lock that I expect to be uncontended.