virtualization.lists.linux-foundation.org archive mirror
 help / color / mirror / Atom feed
* question: asynchronous notification from vhost
@ 2019-10-15  9:23 Guennadi Liakhovetski
  2019-10-15 14:42 ` 0-copy (was Re: question: asynchronous notification from vhost) Guennadi Liakhovetski
  0 siblings, 1 reply; 2+ messages in thread
From: Guennadi Liakhovetski @ 2019-10-15  9:23 UTC (permalink / raw)
  To: virtualization

Hi,

I'm developing a virtualised audio / DSP virtio and vhost driver pair 
and I'm currently somewhat stuck trying to figure out how to 
asynchronously notify the guest from the vhost driver. I'm using the 
vhost_add_used_and_signal() function to return data back to the guest 
in the guest context, when the guest initiated an operation, that's 
working well. But how do I "kick" the guest from an asynchronous, e.g. 
from an interrupt thread context?

Thanks
Guennadi

^ permalink raw reply	[flat|nested] 2+ messages in thread

* 0-copy (was Re: question: asynchronous notification from vhost)
  2019-10-15  9:23 question: asynchronous notification from vhost Guennadi Liakhovetski
@ 2019-10-15 14:42 ` Guennadi Liakhovetski
  0 siblings, 0 replies; 2+ messages in thread
From: Guennadi Liakhovetski @ 2019-10-15 14:42 UTC (permalink / raw)
  To: virtualization

On Tue, Oct 15, 2019 at 11:23:13AM +0200, Guennadi Liakhovetski wrote:
> Hi,
> 
> I'm developing a virtualised audio / DSP virtio and vhost driver pair 
> and I'm currently somewhat stuck trying to figure out how to 
> asynchronously notify the guest from the vhost driver. I'm using the 
> vhost_add_used_and_signal() function to return data back to the guest 
> in the guest context, when the guest initiated an operation, that's 
> working well. But how do I "kick" the guest from an asynchronous, e.g. 
> from an interrupt thread context?

I think I've solved that by using a vhost work queue. That brings me 
one step further, possibly, to the last larger problem to solve: the 
actual data transmission. My preference would be to use zero-copy 
for that, but so far I only see one example of zero-copy in 
drivers/vhost - in net.c and only in TX direction. As far as I 
understand that isn't a principal limitation of the vhost / virtio 
API, rather it's related to certain networking specifics. Am I 
right? Is it supposed to work in both firections, or are there 
problems?

Thanks
Guennadi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2019-10-15 14:42 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-15  9:23 question: asynchronous notification from vhost Guennadi Liakhovetski
2019-10-15 14:42 ` 0-copy (was Re: question: asynchronous notification from vhost) Guennadi Liakhovetski

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).