diff -r 3ad1571d4852 -r aaf835407bf2 mercurial/localrepo.py --- a/mercurial/localrepo.py Sun Apr 12 14:27:42 2015 -0400 +++ b/mercurial/localrepo.py Sun Apr 12 15:37:59 2015 -0400 @@ -1212,8 +1212,10 @@ l.lock() return l - if (self.ui.configbool('devel', 'all') - or self.ui.configbool('devel', 'check-locks')): + # We do not need to check for non-waiting lock aquisition. Such + # acquisition would not cause dead-lock as they would just fail. + if wait and (self.ui.configbool('devel', 'all') + or self.ui.configbool('devel', 'check-locks')): l = self._lockref and self._lockref() if l is not None and l.held: scmutil.develwarn(self.ui, '"wlock" acquired after "lock"')