Re: Using RPMSG to communicate between host and guest drivers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 8/26/2024 6:45 PM, Jason Gunthorpe wrote:
On Mon, Aug 26, 2024 at 12:27:02PM -0400, Dennis Dalessandro wrote:
On 7/31/24 4:02 PM, Doug Miller wrote:
I am working on SR-IOV support for a new adapter which has shared
resources between the PF and VFs and requires an out-of-band (outside
the adapter) communication mechanism to manage those resources. I have
been looking at RPMSG as a mechanism to communicate between the driver
on a guest (VM) and the driver on the host OS (which "owns" the
resources). It appears to me that virtio is intended for communication
between guests and host, and RPMSG over virtio is what I want to use.

Can anyone confirm that RPMSG is capable of doing what we need? If so,
I'll need some help figuring out how to use that from kernel device
drivers (I've not been able to find any examples of doing the
service/device side). If not, is there some other facility that is
better suited?
Hi Bjorn and Mathieu, any advice here for Doug? Adding linux-rdma folks as that
is where this will eventually target.
Typically in cases like this you'd paravirtualize some of the VF
before sticking it in the VM so that there is a tidy channel between
the VF driver and the VMM to do whatever this coordination is. There
are many examples, but it is hard to see if you don't know the device
architectures in detail.
Can you give more detail on how this paravirtualization is accomplished?
Or point to an example? It seems to me that rpmsg would be a cleaner
solution, at least until I can see how paravirtualization is implemented
for comparison.

If you stick it in seperate virtio PCI device you'll have hard
problems co-ordinating the two drivers.

Jason


External recipient





[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux