Have you made sure that it won't lead to a dead lock if locked several times (is it recursive)?