OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

virtio-comment message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: RE: [virtio-comment] [PATCH v1 1/8] admin: Add theory of operation for device migration


> From: Jason Wang <jasowang@redhat.com>
> Sent: Tuesday, November 21, 2023 9:53 AM
> On Thu, Nov 16, 2023 at 2:34âPM Parav Pandit <parav@nvidia.com> wrote:
> >
> >
> >
> > > From: Michael S. Tsirkin <mst@redhat.com>
> > > Sent: Thursday, November 16, 2023 11:53 AM
> > >
> > > On Thu, Nov 16, 2023 at 05:28:19AM +0000, Parav Pandit wrote:
> > > > You continue to want to overload admin commands for dual purpose,
> > > > does
> > > not make sense to me.
> > >
> > > dual -> as a transport and for migration? why can't they be used for
> > > this? I was really hoping to cover these two cases when I proposed them.
> > For following reasons.
> >
> > 1. migration needs incremental reads of only changed context between
> > two reads
> 
> This is wrong. We need to invent general facilities. I've pointed out sufficient
> issues, and what's more delta doesn't work for the following cases:
> 
I disagree to your above comments. Please read below.
It works.

> 1) migration but fail the another try for migration

When hypervisor wants to retry the migration, it invokes the DISCARD command present in v4.
And starts reading the device context again.

> 2) save vm state twice
> 
This can be saved twice when needed.

> It request a lot of tricks in hypervisor to do that (e.g cache the last state?).
Not really.
Hypervisor can always discard what it read and re-read it again as fresh device context.

> 
> >
> > 2. migration writes covers large part of the configurations not just virtio
> common config and device config.
> 
> You invent a duplication of common_cfg structure no?
> 
Nop.
Common configuration is written using a MMIO, byte/word etc boundary by the guest directly in guest owned area.

> What's wrong if we just allow them to be R/W over adminq/cmmands?
> 
As explained before,
Each guest has its own dedicated non mediated interface as defined in virtio spec to not involve hypervisor.
This is uniform for PF and SR-IOV VFs.
And it will be uniform for backward compatible SIOV tomorrow, one the performance numbers for SIOV are available.
For non-backward compatible SIOV, there is better way to not have such a large config space anyway.

> > Such as configuration occurred through the CVQ. All of these is not needed
> when done from guest directly via member's own CVQ.
> 
> That's the device type specific state which requires new commands forsure. I
> don't see any connection. The SIOV device needs to be migrated as well.
> 
And they will use all majority of the device context as presented here.

> >
> > For backward compatible SIOV transport, one may need them to transport
> without above two properties.
> 
> Why, just mediate between virtual PCI and adminq.
> 
I donât understand this.

> >
> > 3. None of this transport is needed for PFs, VFs and non-backward
> compatible SIOVs.
> > Each device to have its own transport that is not intercepted by the
> hypervisor and follow the equivalency principle uniformly for all 3 device types.
> 
> You can have per VF transport q, what's wrong with that?
As explained in the doc and in multiple emails, it is inefficient. CVQ is just enough.


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]