From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH 0/5] Threaded MSI interrupt for VFIO PCI device Date: Thu, 03 Dec 2015 11:55:53 -0700 Message-ID: <1449168953.15753.216.camel@redhat.com> References: <1449166972-8894-1-git-send-email-yunhong.jiang@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit Cc: pbonzini@redhat.com, kvm@vger.kernel.org, linux-kernel@vger.kernel.org To: Yunhong Jiang Return-path: Received: from mx1.redhat.com ([209.132.183.28]:54343 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752095AbbLCSzy (ORCPT ); Thu, 3 Dec 2015 13:55:54 -0500 In-Reply-To: <1449166972-8894-1-git-send-email-yunhong.jiang@linux.intel.com> Sender: kvm-owner@vger.kernel.org List-ID: On Thu, 2015-12-03 at 10:22 -0800, Yunhong Jiang wrote: > When assigning a VFIO device to a KVM guest with low latency requirement, it > is better to handle the interrupt in the hard interrupt context, to reduce > the context switch to/from the IRQ thread. > > Based on discussion on https://lkml.org/lkml/2015/10/26/764, the VFIO msi > interrupt is changed to use request_threaded_irq(). The primary interrupt > handler tries to set the guest interrupt atomically. If it fails to achieve > it, a threaded interrupt handler will be invoked. > > The irq_bypass manager is extended for this purpose. The KVM eventfd will > provide a irqbypass consumer to handle the interrupt at hard interrupt > context. The producer will invoke the consumer's handler then. Do you have any performance data? Thanks, Alex