From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Michael S. Tsirkin" Subject: Re: [PATCH v4 4/4] pci_assign: Flip defaults of prefer_msi and share_intx Date: Thu, 5 Apr 2012 12:46:21 +0300 Message-ID: <20120405094621.GD28808@redhat.com> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: Avi Kivity , Marcelo Tosatti , kvm@vger.kernel.org, Alex Williamson To: Jan Kiszka Return-path: Received: from mx1.redhat.com ([209.132.183.28]:10704 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753289Ab2DEJqH (ORCPT ); Thu, 5 Apr 2012 05:46:07 -0400 Content-Disposition: inline In-Reply-To: Sender: kvm-owner@vger.kernel.org List-ID: On Thu, Mar 08, 2012 at 11:10:27AM +0100, Jan Kiszka wrote: > INTx sharing is a bit more expensive than exclusive host interrupts, but > this channel is not supposed to be used for high-performance scenarios > anyway. Modern devices support MSI/MSI-X and do not depend on using INTx > under critical workload, real old devices do not support INTx sharing > anyway. > > For those in the middle, the user experience is much better if they just > work even when IRQ sharing is required. If there is nothing to share, > share_intx=off can still be applied as tuning parameter. > > With INTx sharing as default, the primary reason for prefer_msi=on is > gone. Make it default off, specifically as it is known to cause troubles > with devices that have incomplete/broken MSI support or otherwise > stumble if host IRQ configuration does not match guest driver > expectation. > > Signed-off-by: Jan Kiszka I'm not familiar enough with what prefer_msi does so no comment here. Maybe Alex can ack. If not I'll try to find the time to understand it a bit better but will take some time. > hw/device-assignment.c | 4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > > diff --git a/hw/device-assignment.c b/hw/device-assignment.c > index b7cabd4..caa3602 100644 > --- a/hw/device-assignment.c > +++ b/hw/device-assignment.c > @@ -1770,9 +1770,9 @@ static Property da_properties[] = > DEFINE_PROP_BIT("iommu", AssignedDevice, features, > ASSIGNED_DEVICE_USE_IOMMU_BIT, true), > DEFINE_PROP_BIT("prefer_msi", AssignedDevice, features, > - ASSIGNED_DEVICE_PREFER_MSI_BIT, true), > + ASSIGNED_DEVICE_PREFER_MSI_BIT, false), > DEFINE_PROP_BIT("share_intx", AssignedDevice, features, > - ASSIGNED_DEVICE_SHARE_INTX_BIT, false), > + ASSIGNED_DEVICE_SHARE_INTX_BIT, true), > DEFINE_PROP_INT32("bootindex", AssignedDevice, bootindex, -1), > DEFINE_PROP_STRING("configfd", AssignedDevice, configfd_name), > DEFINE_PROP_END_OF_LIST(), > -- > 1.7.3.4