change mutex to recursive mutex
fix typo