[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v2 4/8] QAPI: new QMP command option "without-bql"
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-devel] [RFC v2 4/8] QAPI: new QMP command option "without-bql" |
Date: |
Fri, 8 Sep 2017 18:52:35 +0100 |
User-agent: |
Mutt/1.8.3 (2017-05-23) |
* Peter Xu (address@hidden) wrote:
> On Fri, Aug 25, 2017 at 10:06:27AM +0100, Dr. David Alan Gilbert wrote:
> > * Peter Xu (address@hidden) wrote:
> > > 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?
> >
> > It needs to be docuemnted for QMP users as well so that those developing
> > management code know what's safe.
>
> I see. What's the corresponding QMP documentation I should touch up?
I'm not sure, but based on the long thread; I think the idea is to add
something to the schema so the flag appears in the introspection. I'll
leave the details of how to Markus.
> >
> > > 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)
> >
> > 'lock free' might be better?
>
> I'm ok with it. But would the word "lock" too general?
Maybe, but it's probably not just BQL.
Dave
> --
> Peter Xu
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK