lkml.org 
[lkml]   [2014]   [Dec]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRE: [v3 06/26] iommu, x86: No need to migrating irq for VT-d Posted-Interrupts
Date


> -----Original Message-----
> From: Paolo Bonzini [mailto:paolo.bonzini@gmail.com] On Behalf Of Paolo
> Bonzini
> Sent: Tuesday, December 23, 2014 4:48 PM
> To: Zhang, Yang Z; Paolo Bonzini; Wu, Feng; Thomas Gleixner; Ingo Molnar; H.
> Peter Anvin; x86@kernel.org; Gleb Natapov; dwmw2@infradead.org;
> joro@8bytes.org; Alex Williamson; Jiang Liu
> Cc: iommu@lists.linux-foundation.org; linux-kernel@vger.kernel.org; KVM list;
> Eric Auger
> Subject: Re: [v3 06/26] iommu, x86: No need to migrating irq for VT-d
> Posted-Interrupts
>
>
>
> On 23/12/2014 01:37, Zhang, Yang Z wrote:
> > I don't quite understand it. If user set an interrupt's affinity to a
> > CPU, but he still see the interrupt delivers to other CPUs in host.
> > Do you think it is a right behavior?
>
> No, the interrupt is not delivered at all in the host. Normally you'd have:
>
> - interrupt delivered to CPU from host affinity
>
> - VFIO interrupt handler writes to irqfd
>
> - interrupt delivered to vCPU from guest affinity
>
> Here, you just skip the first two steps. The interrupt is delivered to
> the thread that is running the vCPU directly, so the host affinity is
> bypassed entirely.
>
> ... unless you are considering the case where the vCPU is blocked and
> the host is processing the posted interrupt wakeup vector. In that case
> yes, it would be better to set NDST to a CPU matching the host affinity.

In my understanding, wakeup vector should have no relationship with the
host affinity of the irq. Wakeup notification event should be delivered to
the pCPU which the vCPU was blocked on. And in kernel's point of view,
the irq is not associated with the wakeup vector, right?

Thanks,
Feng

> But it would be handled in patch 24. We also have the same problem
> with lowest-priority interrupts; likely the host has configured the
> interrupt affinity for any CPU. So we can do it later when we add
> vector hashing support. In the meanwhile, Feng, please add a FIXME
> comment.
>
> Does this make sense?
>
> Paolo


\
 
 \ /
  Last update: 2014-12-23 10:41    [W:0.144 / U:0.340 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site