Il 05/04/2013 15:46, Anthony Liguori ha scritto: > The char-flow refactoring introduced a busy-wait that depended on > an action from the VCPU thread. However, the VCPU thread could > never take that action because the busy-wait starved the VCPU thread > of the BQL because it never dropped the mutex while running select. > > Paolo doesn't want to drop this optimization for fear that we will > stop detecting these busy waits. I'm afraid to keep this optimization > even with the busy-wait fixed because I think a similar problem can > occur just with heavy I/O thread load manifesting itself as VCPU pauses. > > As a compromise, introduce an artificial timeout after a thousand > iterations but print a rate limited warning when this happens. This > let's us still detect when this condition occurs without it being > a fatal error.
Good idea, thanks! Paolo