Re: [Qemu-devel] [RFC PATCH 0/2] virtio-mmio: add irqfd support for vhost-net based on virtio-mmio

From: Shannon Zhao
Date: Wed Nov 05 2014 - 21:00:32 EST




On 2014/11/5 16:43, Eric Auger wrote:
> On 10/27/2014 12:23 PM, Li Liu wrote:
>>
>>
>> On 2014/10/27 17:37, Peter Maydell wrote:
>>> On 25 October 2014 09:24, john.liuli <john.liuli@xxxxxxxxxx> wrote:
>>>> To get the interrupt reason to support such VIRTIO_NET_F_STATUS
>>>> features I add a new register offset VIRTIO_MMIO_ISRMEM which
>>>> will help to establish a shared memory region between qemu and
>>>> virtio-mmio device. Then the interrupt reason can be accessed by
>>>> guest driver through this region. At the same time, the virtio-mmio
>>>> dirver check this region to see irqfd is supported or not during
>>>> the irq handler registration, and different handler will be assigned.
>>>
>>> If you want to add a new register you should probably propose
>>> an update to the virtio spec. However, it seems to me it would
>>> be better to get generic PCI/PCIe working on the ARM virt
>>> board instead; then we can let virtio-mmio quietly fade away.
>>> This has been on the todo list for ages (and there have been
>>> RFC patches posted for plain PCI), it's just nobody's had time
>>> to work on it.
>>>
>>> thanks
>>> -- PMM
>>>
>>
>> So you mean virtio-mmio will be replaced by PCI/PCIe on ARM at last?
>> If so, let this patch go with the wind:). Thx.
>
> Hi,
>
> As a fix of current situation where ISR is only partially updated when
> vhost-irqfd handles standard IRQ and waiting for PCI emuluation,
> wouldn't it make sense to store ISR content on vhost driver side and
> introduce ioctls to read/write it. When using vhost BE, virtio QEMU
> device would use those ioctl to read/update the ISR content. On top of
> that we would update the ISR in vhost before triggering the irqfd. If I
> do not miss anything this would at least make things functional with irqfd.
>
> As a second step, we could try to introduce in-kernel emulation of
> ISR/ACK to fix the performance issue related to going to user-side each
> time ISR/ACK accesses are done.
>
> Do you think it is worth investigating this direction?
>
Hi,

About this problem I have a talk with Li Liu. As MST said, we could use
multiple GSI to support vhost-net with irqfd. And we have figured out a way
to solve this problem. The method is as same as virtio-pci which is to assign
multiple irqs for virtio-mmio. Also it can support multiqueue virtio-net on arm.

Would you have a look at this method? Thank you very much.

- virtio-mmio: support for multiple irqs
http://www.spinics.net/lists/kernel/msg1858860.html

Thanks,
Shannon

> Thank you in advance
>
> Best Regards
>
> Eric
>
>
>>
>> Li.
>>> .
>>>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/