On Thu, Feb 27, 2020 at 04:32:24PM +0100, Auger Eric wrote: > Hi Peter, Hi, Eric,
> > On 2/26/20 11:50 PM, Peter Xu wrote: > > VFIO INTx is not working with split irqchip. On new kernels KVM_IRQFD > > will directly fail with resamplefd attached so QEMU will automatically > > fallback to the INTx slow path. However on old kernels it's still > > broken. > I think you should quote the commit that changes the behavior: > 654f1f13ea56 kvm: Check irqchip mode before assign irqfd? > so that one can understand what it fixed. Right I should mention that. Actually I mentioned it in an old cover letter but unluckily something wrong happened with git-publish and merely my whole cover letter is gone... So what you saw is actually a simplified version and I think I must have lost something like this... :( Thanks for bringing that up. > > So on kernels that do not feature that commit, the ioctl succeeds and we > pretend the resamplefd was properly attached whereas in practice it was > never triggered. Right. Another thing I just noticed is that we must _not_ attach the resamplefd to the KVM_IRQFD ioctl when we registered this in the userspace. One thing is it's for sure not needed at all. More importantly, on new kernels (after commit 654f1f13ea56) the KVM_IRQFD could fail (because it sees both split irqchip and resamplefd) and QEMU will fallback again to the slow path even if the fast path can work. Thanks, -- Peter Xu
