On 2021/3/4 4:58 下午, Yongji Xie wrote:
On Thu, Mar 4, 2021 at 2:59 PM Jason Wang <jasowang@xxxxxxxxxx> wrote:
On 2021/2/23 7:50 下午, Xie Yongji wrote:
This patch introduces a workqueue to support injecting
virtqueue's interrupt asynchronously. This is mainly
for performance considerations which makes sure the push()
and pop() for used vring can be asynchronous.
Do you have pref numbers for this patch?
No, I can do some tests for it if needed.
Another problem is the VIRTIO_RING_F_EVENT_IDX feature will be useless
if we call irq callback in ioctl context. Something like:
virtqueue_push();
virtio_notify();
ioctl()
-------------------------------------------------
irq_cb()
virtqueue_get_buf()
The used vring is always empty each time we call virtqueue_push() in
userspace. Not sure if it is what we expected.
I'm not sure I get the issue.
THe used ring should be filled by virtqueue_push() which is done by
userspace before?
Thanks
Thanks,
Yongji