[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split ir
From: |
Jan Kiszka |
Subject: |
Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip |
Date: |
Sun, 26 Jun 2016 15:27:50 +0200 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666 |
On 2016-06-26 03:48, Peter Xu wrote:
> On Sat, Jun 25, 2016 at 05:18:40PM +0200, Jan Kiszka wrote:
>> On 2016-06-25 15:18, Peter Xu wrote:
>>> On Sat, Jun 25, 2016 at 10:08:10AM +0200, Jan Kiszka wrote:
>
> [...]
>
>>> I have a thought on how to implement the "sink" you have mentioned:
>>>
>>> First of all, in KVM, we provide a new KVM_IRQ_ROUTING_* type, maybe
>>> called:
>>>
>>> KVM_IRQ_ROUTING_EVENTFD
>>
>> Not really, because all sources are either using eventfds, which you can
>> also terminate in user space (already done for vhost and vfio in certain
>> scenarios - IIRC) or originate there anyway (IOAPIC).
>
> But how should we handle the cases when the interrupt path are all in
> kernel?
There are none which we can't redirect (only full in-kernel irqchip
would have, but that's unsupported anyway).
>
> For vhost, data should be transfered all inside kernel when split
> irqchip and irqfd are used: when vhost got data, it triggers irqfd to
> deliver the interrupt to KVM. Along the way, we should all in kernel.
>
> For vfio, we have vfio_msihandler() who handles the hardware IRQ and
> then triggers irqfd as well to KVM. Again, it seems all in kernel
> space, no chance to stop that as well.
>
> Please correct me if I was wrong.
Look at what vhost is doing e.g.: when a virtqueue is masked, it
installs an event notifier that records incoming events in a pending
state field. When it's unmasked, the corresponding KVM irqfd is installed.
Jan
signature.asc
Description: OpenPGP digital signature
- [Qemu-devel] [PATCH v10 11/26] intel_iommu: define several structs for IOMMU IR, (continued)
- [Qemu-devel] [PATCH v10 11/26] intel_iommu: define several structs for IOMMU IR, Peter Xu, 2016/06/21
- [Qemu-devel] [PATCH v10 12/26] intel_iommu: add IR translation faults defines, Peter Xu, 2016/06/21
- [Qemu-devel] [PATCH v10 13/26] intel_iommu: Add support for PCI MSI remap, Peter Xu, 2016/06/21
- [Qemu-devel] [PATCH v10 14/26] q35: ioapic: add support for emulated IOAPIC IR, Peter Xu, 2016/06/21
- [Qemu-devel] [PATCH v10 15/26] ioapic: introduce ioapic_entry_parse() helper, Peter Xu, 2016/06/21
- [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Peter Xu, 2016/06/21
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Jan Kiszka, 2016/06/25
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Peter Xu, 2016/06/25
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Jan Kiszka, 2016/06/25
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Peter Xu, 2016/06/25
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip,
Jan Kiszka <=
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Michael S. Tsirkin, 2016/06/28
- Re: [Qemu-devel] [PATCH v10 16/26] intel_iommu: add support for split irqchip, Peter Xu, 2016/06/28
[Qemu-devel] [PATCH v10 17/26] x86-iommu: introduce IEC notifiers, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 18/26] ioapic: register IOMMU IEC notifier for ioapic, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 19/26] intel_iommu: Add support for Extended Interrupt Mode, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 20/26] intel_iommu: add SID validation for IR, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 21/26] kvm-irqchip: simplify kvm_irqchip_add_msi_route, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 22/26] kvm-irqchip: i386: add hook for add/remove virq, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 23/26] kvm-irqchip: x86: add msi route notify fn, Peter Xu, 2016/06/21
[Qemu-devel] [PATCH v10 24/26] kvm-irqchip: do explicit commit when update irq, Peter Xu, 2016/06/21