Use optimized RWSEM algorithim