On Wed, Aug 23, 2017 at 06:44:12PM +0100, Dr. David Alan Gilbert wrote: [...]
> > +Most of the commands require the Big QEMU Lock (BQL) be held during > > +execution. However, there is a small subset of the commands that may > > +not really need BQL at all. To mark out this kind of commands, we can > > +specify "without-bql" to "true". This parameter is only a hint for > > +internal QMP implementation to provide possiblility to allow commands > > +be run in parallel, or reduce the contention of the lock. Users of QMP > > +should not really be aware of such information. > > Well, I think users of these commands might select them specifically > because they know that they won't block. Those who care about latency might > look to use commands that don't take the lock because of a reduced > effect on the performance as well. What would be the best way to tell user? I think again this should mostly for HMP only, right? Maybe we can add a new command to list these lock-free commands. Or, I can dump something in "help" and "help info" like: (qemu) help migrate_incoming migrate_incoming uri -- Continue an incoming migration from an -incoming defer (BQL-less) -- Peter Xu