[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [RFC v6 25/27] docs: update QMP documents for OOB comma
From: |
Peter Xu |
Subject: |
Re: [Qemu-devel] [RFC v6 25/27] docs: update QMP documents for OOB commands |
Date: |
Fri, 12 Jan 2018 14:54:17 +0800 |
User-agent: |
Mutt/1.9.1 (2017-09-22) |
On Tue, Jan 09, 2018 at 02:52:25PM +0000, Stefan Hajnoczi wrote:
> On Tue, Dec 19, 2017 at 04:45:55PM +0800, Peter Xu wrote:
> > +To add OOB execution support for a command, we need to make sure the
> > +command handler satisfies at least the following:
>
> It would help to rephrase this in the imperative mood (telling the
> reader what to do rather than describing what would need to be done):
>
> "OOB command handlers must satisfy the following conditions:"
>
> That way it's shorter and easier to read, and it communicates that these
> conditions are absolutely necessary.
>
> > +
> > +- It executes extremely fast,
> > +- It does not take any lock (or, it can take very small locks, but in
> > + very predictable ways),
>
> "it can take very small locks, but in very predictable ways" does not
> explain what is allowed and what isn't.
>
> I suggest: "it can take very small locks if all critical regions also
> follow the rules for OOB command handler code".
>
> > +- It does not invoke system calls that may block,
> > +- It does not access guest RAM that may block when userfaultfd is
> > + enabled for postcopy live migration.
> > +
> > +If someone is unsure about whether a command handler can be run in OOB
> > +way, then it possibly means that it does not suite for OOB execution.
>
> "If in doubt, do not implement OOB execution support."
All fixed. Thanks,
--
Peter Xu