func unlock(lock lockfile.Lockfile) error { locksMu.Lock() defer locksMu.Unlock() if _, ok := locks[lock]; !ok { return nil } delete(locks, lock) return lock.Unlock() }