dca: redesign locks to fix deadlocks