On Wed, Oct 27, 2021 at 02:45:15PM -0400, Michael S. Tsirkin wrote:
On Wed, Oct 27, 2021 at 04:33:50PM +0200, Stefano Garzarella wrote:
Hi folks,
I was trying to understand if we have a way to specify which vDPA bus
driver (e.g. vhost-vdpa, virtio-vdpa) a device should use.
IIUC we don't have it, and the first registered driver is used when a
new device is registered.
I was thinking if it makes sense to extend the management API to
specify which bus driver to use for a device. A use case could be for
example a single host handling VMs and bare-metal containers, so we
would have both virtio-vdpa and vhost-vdpa loaded and we want to
attach some devices to VMs through vhost-vdpa and others to containers
through virtio-vdpa.
What do you think?
I can prepare an RFC with some code, the idea is to use the .match
callback of "struct bus_type" to use a driver instead of the other,
and extend netlink API to specify the vDPA bus driver name to use.
Thanks,
Stefano
So I think that doing this at create time is somewhat limited.
For example a great way to do migration could be to unbind
device from VM then bind virtio on the host to it, then
bind macvtap to that.
Yep, make sense!
Ideas on how to allow that?
Maybe we can split the device creation and the attach (probe) in two
APIs, then we can add a detach API to allow changing bus.
Anyway I need to check the code better, but I think it's doable.
Stefano
_______________________________________________
Virtualization mailing list
Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx
https://lists.linuxfoundation.org/mailman/listinfo/virtualization