Oh yeah, of course cleanup could be called from many places, should make it not deadlock.