On Mon, Sep 19, 2016 at 14:50:43 +0200, Paolo Bonzini wrote: > In addition to fixing some of the issues found by Alex, safe work items > need not run anymore with a mutex taken. Of course, cpu_exec_start/end > and start_exclusive/end_exclusive are essentially the read and write > side of a specialized rwlock, so there is still a lock in disguise looming > to cause deadlocks; however, it does removes worries about recursive > locking from CPU list manipulations. > > The new patches are 8, 12 and 13. Patch 12 of v6 has been split > across patch 10 and patch 16.
I really like this patchset! Didn't have time to look at previous iterations, but the use of the cpu_list_mutex to serialize safe work is a great win--it simplifies things significantly. BTW should we take this chance to RCU'ify the CPU list? This series + safe cpu_list traversals + cmpxchg changes = MTTCG user-mode would be in very good shape. (full-system mode still needs work on the TLB side, me thinks) Thanks, E.