[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [virtio] use virtqueue async
From: |
Catalin Vasile |
Subject: |
[Qemu-devel] [virtio] use virtqueue async |
Date: |
Fri, 8 May 2015 13:42:31 +0300 |
Can I use a virtqueue asynchronously between guest and backend?
By that I mean that any end of the communication channel (virtqueue)
can push/pop how much data he wants anytime, without worrying that it
will pop a thing that it pushed on the queue, and in fact the other
end should have popped it? Or do I have to use 2 virtqueues for this
to happen?
What I'm trying to do is to process jobs in the backend continuously
and then send a little more detailed result of the job. The job itself
will run async on some piece of hardware while I continue popping jobs
from the queue (the backend itself will just schedule them, will not
busy wait till they get done). When a job is done, a callback will be
called which will push the result one the virtqueue.
What I am worrying about is what if I use the same queue for job
request and job result? Is there a possibility for a job result to be
processed by the same entity that put it there, instead of the other
end?
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-devel] [virtio] use virtqueue async,
Catalin Vasile <=