[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <559631C0.4050806@linaro.org>
Date: Fri, 03 Jul 2015 08:54:56 +0200
From: Eric Auger <eric.auger@...aro.org>
To: "Wu, Feng" <feng.wu@...el.com>,
Paolo Bonzini <pbonzini@...hat.com>,
"eric.auger@...com" <eric.auger@...com>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"kvmarm@...ts.cs.columbia.edu" <kvmarm@...ts.cs.columbia.edu>,
"kvm@...r.kernel.org" <kvm@...r.kernel.org>,
"christoffer.dall@...aro.org" <christoffer.dall@...aro.org>,
"marc.zyngier@....com" <marc.zyngier@....com>,
"alex.williamson@...hat.com" <alex.williamson@...hat.com>,
"avi.kivity@...il.com" <avi.kivity@...il.com>,
"mtosatti@...hat.com" <mtosatti@...hat.com>,
"joro@...tes.org" <joro@...tes.org>,
"b.reynal@...tualopensystems.com" <b.reynal@...tualopensystems.com>
CC: "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"patches@...aro.org" <patches@...aro.org>
Subject: Re: [RFC 12/17] irq: bypass: Extend skeleton for ARM forwarding control
Paolo,
On 07/03/2015 04:24 AM, Wu, Feng wrote:
>
>
>> -----Original Message-----
>> From: Wu, Feng
>> Sent: Friday, July 03, 2015 10:20 AM
>> To: Paolo Bonzini; Eric Auger; eric.auger@...com;
>> linux-arm-kernel@...ts.infradead.org; kvmarm@...ts.cs.columbia.edu;
>> kvm@...r.kernel.org; christoffer.dall@...aro.org; marc.zyngier@....com;
>> alex.williamson@...hat.com; avi.kivity@...il.com; mtosatti@...hat.com;
>> joro@...tes.org; b.reynal@...tualopensystems.com
>> Cc: linux-kernel@...r.kernel.org; patches@...aro.org; Wu, Feng
>> Subject: RE: [RFC 12/17] irq: bypass: Extend skeleton for ARM forwarding
>> control
>>
>>
>>
>>> -----Original Message-----
>>> From: Paolo Bonzini [mailto:pbonzini@...hat.com]
>>> Sent: Thursday, July 02, 2015 9:41 PM
>>> To: Eric Auger; eric.auger@...com; linux-arm-kernel@...ts.infradead.org;
>>> kvmarm@...ts.cs.columbia.edu; kvm@...r.kernel.org;
>>> christoffer.dall@...aro.org; marc.zyngier@....com;
>>> alex.williamson@...hat.com; avi.kivity@...il.com; mtosatti@...hat.com;
>>> Wu, Feng; joro@...tes.org; b.reynal@...tualopensystems.com
>>> Cc: linux-kernel@...r.kernel.org; patches@...aro.org
>>> Subject: Re: [RFC 12/17] irq: bypass: Extend skeleton for ARM forwarding
>>> control
>>>
>>>
>>>
>>> On 02/07/2015 15:17, Eric Auger wrote:
>>>> - new fields are added on producer side: linux irq, vfio_device handle,
>>>> active which reflects whether the source is active (at interrupt
>>>> controller level or at VFIO level - automasked -) and finally an
>>>> opaque pointer which will be used to point to the vfio_platform_device
>>>> in this series.
>>>
>>> Linux IRQ and active should be okay. As to the vfio_device handle, you
>>> should link it from the vfio_platform_device instead. And for the
>>> vfio_platform_device, you can link it from the vfio_platform_irq instead.
>>>
>>> Once you've done this, embed the irq_bypass_producer struct in the
>>> vfio_platform_irq struct; in the new kvm_arch_* functions, go back to
>>> the vfio_platform_irq struct via container_of. From there you can
>>> retrieve pointers to the vfio_platform_device and the vfio_device.
>>>
>>>> - new fields on consumer side: the kvm handle, the gsi
>>>
>>> You do not need to add these. Instead, add the kvm handle to irqfd
>>> only. Like above, embed the irq_bypass_consumer struct in the irqfd
>>> struct; in the new kvm_arch_* functions, go back to the
>>> vfio_platform_irq struct via container_of.
>>>
>>
>> I also need the gsi field here, for posted-interrupts, I need 'gsi', 'irq' to
>> update the IRTE.
>
> Oh... we can get gsi from irq_bypass_consumer -> _irqfd -> gsi, so it
> is not needed in irq_bypass_consumer. Got it! :)
The issue I have is that struct _irqfd is local to eventfd.c so it
cannot be used in archi specific code. Is it acceptable to move it to
kvm_host.h, naming it something like kvm_kernel_irqfd (as done for
kvm_kernel_irq_routing_entry)? Would also need to move _irqfd_resampler
there (kvm_kernel_irqfd_resampler).
irqfd user struct cannot be used in a standalone manner since we miss
the kvm handle.
Thanks
Eric
>
> Thanks,
> Feng
>
>>
>> Thanks,
>> Feng
>>
>>
>>> Paolo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists