From: Cornelia Huck <cohuck@redhat.com>
To: Jason Gunthorpe <jgg@nvidia.com>
Cc: Alex Williamson <alex.williamson@redhat.com>,
Jonathan Corbet <corbet@lwn.net>,
linux-doc@vger.kernel.org, kvm@vger.kernel.org,
Kirti Wankhede <kwankhede@nvidia.com>,
Max Gurtovoy <mgurtovoy@nvidia.com>,
Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>,
Yishai Hadas <yishaih@nvidia.com>
Subject: Re: [PATCH RFC v2] vfio: Documentation for the migration region
Date: Mon, 06 Dec 2021 19:06:35 +0100 [thread overview]
Message-ID: <87tufltxp0.fsf@redhat.com> (raw)
In-Reply-To: <20211206173422.GK4670@nvidia.com>
On Mon, Dec 06 2021, Jason Gunthorpe <jgg@nvidia.com> wrote:
> On Mon, Dec 06, 2021 at 05:03:00PM +0100, Cornelia Huck wrote:
>
>> > If we're writing a specification, that's really a MAY statement,
>> > userspace MAY issue a reset to abort the RESUMING process and return
>> > the device to RUNNING. They MAY also write the device_state directly,
>> > which MAY return an error depending on various factors such as whether
>> > data has been written to the migration state and whether that data is
>> > complete. If a failed transitions results in an ERROR device_state,
>> > the user MUST issue a reset in order to return it to a RUNNING state
>> > without closing the interface.
>>
>> Are we actually writing a specification? If yes, we need to be more
>> clear on what is mandatory (MUST), advised (SHOULD), or allowed
>> (MAY). If I look at the current proposal, I'm not sure into which
>> category some of the statements fall.
>
> I deliberately didn't use such formal language because this is far
> from what I'd consider an acceptable spec. It is more words about how
> things work and some kind of basis for agreement between user and
> kernel.
We don't really need formal language, but there are too many unclear
statements, as the discussion above showed. Therefore my question: What
are we actually writing? Even if it is not a formal specification, it
still needs to be clear.
>
> Under Linus's "don't break userspace" guideline whatever userspace
> ends up doing becomes the spec the kernel is wedded to, regardless of
> what we write down here.
All the more important that we actually agree before this is merged! I
don't want choices hidden deep inside the mlx5 driver dictating what
other drivers should do, it must be reasonably easy to figure out
(including what is mandatory, and what is flexible.)
> Which basically means whatever mlx5 and qemu does after we go forward
> is the definitive spec and we cannot change qemu in a way that is
> incompatible with mlx5 or introduce a new driver that is incompatible
> with qemu.
TBH, I'm not too happy with the current QEMU state, either. We need to
take a long, hard look first and figure out what we need to do to make
the QEMU support non-experimental.
We're discussing a complex topic here, and we really don't want to
perpetuate an unclear uAPI. This is where my push for more precise
statements is coming from.
next prev parent reply other threads:[~2021-12-06 18:07 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-11-29 14:45 [PATCH RFC v2] vfio: Documentation for the migration region Jason Gunthorpe
2021-11-30 17:26 ` Alex Williamson
2021-11-30 18:59 ` Jason Gunthorpe
2021-11-30 22:35 ` Alex Williamson
2021-12-01 3:14 ` Jason Gunthorpe
2021-12-01 9:54 ` Shameerali Kolothum Thodi
2021-12-01 13:49 ` Jason Gunthorpe
2021-12-01 20:03 ` Alex Williamson
2021-12-01 23:25 ` Jason Gunthorpe
2021-12-02 17:05 ` Cornelia Huck
2021-12-02 17:41 ` Jason Gunthorpe
2021-12-02 17:46 ` Cornelia Huck
2021-12-03 18:06 ` Alex Williamson
2021-12-06 16:03 ` Cornelia Huck
2021-12-06 17:34 ` Jason Gunthorpe
2021-12-06 18:06 ` Cornelia Huck [this message]
2021-12-06 19:19 ` Jason Gunthorpe
2021-12-07 11:16 ` Cornelia Huck
2021-12-07 15:51 ` Jason Gunthorpe
2021-12-07 16:30 ` Cornelia Huck
2021-12-07 17:00 ` Jason Gunthorpe
2021-12-08 16:06 ` Alex Williamson
2021-12-08 20:27 ` Jason Gunthorpe
2021-12-06 19:15 ` Jason Gunthorpe
2021-12-07 10:50 ` Cornelia Huck
2021-12-07 15:37 ` Jason Gunthorpe
2021-12-07 15:56 ` Cornelia Huck
2021-12-07 16:13 ` Jason Gunthorpe
2021-12-07 16:22 ` Alex Williamson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87tufltxp0.fsf@redhat.com \
--to=cohuck@redhat.com \
--cc=alex.williamson@redhat.com \
--cc=corbet@lwn.net \
--cc=jgg@nvidia.com \
--cc=kvm@vger.kernel.org \
--cc=kwankhede@nvidia.com \
--cc=linux-doc@vger.kernel.org \
--cc=mgurtovoy@nvidia.com \
--cc=shameerali.kolothum.thodi@huawei.com \
--cc=yishaih@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).