在 2021/3/26 下午5:18, Jason Wang 写道:
?
I assume that both src and dest started with vhost=on.
As driver B supports both packed and split, you can switch from driver
A to driver B after migration
and driver B will work with split. Exactly as it does today.
The key question is what is more important - vhost or features that
vhost does not support?
current code says: vhost is more important always
v1 patch says: features are more important always.
v2 patch says: vhost is more important at init time, features are more
important at migration time.
Because we are able to drop vhost but we can't drop features when we
have a running driver.
Do you agree?
I think what came from cli is the most important. So if I understand
correclty:
- vhost=on means "turn on vhost when possible" it implies that
fallback is allowed (we had already had fallback codes)
- vhostforce=on means "turn on vhost unconditonally" it implies that
we can't do fallback
So my understanding is that:
- "vhost=on, packed=on", we can fallback to userspace but must keep
packed virtqueue works
- "vhost=on,vhostforce=on,packed=on", we can't fallback and must keep
both vhost and packed virtqueue work, if we can't we need to fail
Thanks
Daniel and Michael, am I right here?
We need some inputs to move forward to fix the migration compatibility
issue.
Thanks