From: Jason Gunthorpe <jgg@nvidia.com>
To: "Tian, Kevin" <kevin.tian@intel.com>
Cc: Alex Williamson <alex.williamson@redhat.com>,
"cohuck@redhat.com" <cohuck@redhat.com>,
"kvm@vger.kernel.org" <kvm@vger.kernel.org>,
"farman@linux.ibm.com" <farman@linux.ibm.com>,
"mjrosato@linux.ibm.com" <mjrosato@linux.ibm.com>,
"pasic@linux.ibm.com" <pasic@linux.ibm.com>,
Yishai Hadas <yishaih@nvidia.com>
Subject: Re: [PATCH RFC] vfio: Revise and update the migration uAPI description
Date: Wed, 26 Jan 2022 11:33:01 -0400 [thread overview]
Message-ID: <20220126153301.GS84788@nvidia.com> (raw)
In-Reply-To: <20220126121447.GQ84788@nvidia.com>
On Wed, Jan 26, 2022 at 08:14:47AM -0400, Jason Gunthorpe wrote:
> > > with the base feature set anyhow, as they can not support a RUNNING ->
> > > STOP_COPY transition without, minimally, completing all the open
> > > vPRIs. As VMMs implementing the base protocol should stop the vCPU and
> > > then move the device to STOP_COPY, it is inherently incompatible with
> > > what you are proposing.
> >
> > My understanding is that STOP_P2P is entered before stopping vCPU.
> > If that state can be extended for STOP_DMA, then it's compatible.
>
> Well, it hasn't been coded yet, but this isn't strictly required to
> achieve its purpose..
Sorry, this isn't quite clear
The base v2 protocol specified RUNNING -> STOP(_COPY) as the only FSM
arc, and due to the definition of STOP this must be done with the vCPU
suspended.
So, this vPRI you are talking about simply cannot implement this, and
is incompatible with the base protocol that requires it.
Thus we have a device in this mode unable to do certain FSM
transitions, like RUNNING -> STOP and should block them.
On the other hand, the P2P stuff is deliberately compatible and due to
this there will be cases where RUNNING_P2P/etc can logically occur
with vCPU halted.
So.. this vPRI requirement is quite a big deviation. We can certainly
handle it inside the FSM framework, but it doesn't seem backward
compatible. I wouldn't worry too much about defining it now at least
Jason
next prev parent reply other threads:[~2022-01-26 15:33 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-14 19:35 [PATCH RFC] vfio: Revise and update the migration uAPI description Jason Gunthorpe
2022-01-18 14:04 ` Yishai Hadas
2022-01-18 19:55 ` Alex Williamson
2022-01-18 21:00 ` Jason Gunthorpe
2022-01-19 11:40 ` Cornelia Huck
2022-01-19 12:44 ` Jason Gunthorpe
2022-01-19 13:42 ` Jason Gunthorpe
2022-01-19 14:59 ` Jason Gunthorpe
2022-01-19 15:32 ` Alex Williamson
2022-01-19 15:40 ` Jason Gunthorpe
2022-01-19 16:06 ` Alex Williamson
2022-01-19 16:38 ` Jason Gunthorpe
2022-01-19 17:02 ` Alex Williamson
2022-01-20 0:19 ` Jason Gunthorpe
2022-01-24 10:24 ` Cornelia Huck
2022-01-24 17:57 ` Jason Gunthorpe
2022-01-19 13:18 ` Jason Gunthorpe
2022-01-25 3:55 ` Tian, Kevin
2022-01-25 13:11 ` Jason Gunthorpe
2022-01-26 1:17 ` Tian, Kevin
2022-01-26 1:32 ` Jason Gunthorpe
2022-01-26 1:49 ` Tian, Kevin
2022-01-26 12:14 ` Jason Gunthorpe
2022-01-26 15:33 ` Jason Gunthorpe [this message]
2022-01-27 0:38 ` Tian, Kevin
2022-01-27 0:48 ` Jason Gunthorpe
2022-01-27 1:03 ` Tian, Kevin
2022-01-27 0:53 ` Tian, Kevin
2022-01-27 1:10 ` Jason Gunthorpe
2022-01-27 1:21 ` Tian, Kevin
2022-01-26 1:35 ` Jason Gunthorpe
2022-01-26 1:58 ` Tian, Kevin
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=20220126153301.GS84788@nvidia.com \
--to=jgg@nvidia.com \
--cc=alex.williamson@redhat.com \
--cc=cohuck@redhat.com \
--cc=farman@linux.ibm.com \
--cc=kevin.tian@intel.com \
--cc=kvm@vger.kernel.org \
--cc=mjrosato@linux.ibm.com \
--cc=pasic@linux.ibm.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).