From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58959) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b4pGI-0005TB-5G for qemu-devel@nongnu.org; Mon, 23 May 2016 08:47:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b4pGE-0003X1-0c for qemu-devel@nongnu.org; Mon, 23 May 2016 08:47:09 -0400 Received: from [59.151.112.132] (port=42398 helo=heian.cn.fujitsu.com) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b4pGD-0003Vk-59 for qemu-devel@nongnu.org; Mon, 23 May 2016 08:47:05 -0400 References: <1462508442-9407-1-git-send-email-caoj.fnst@cn.fujitsu.com> <1462508442-9407-12-git-send-email-caoj.fnst@cn.fujitsu.com> <57387C96.2090103@redhat.com> <573AEDA9.5080507@cn.fujitsu.com> <5742D61F.2090602@redhat.com> From: Cao jin Message-ID: <5742FCD8.4020400@cn.fujitsu.com> Date: Mon, 23 May 2016 20:51:36 +0800 MIME-Version: 1.0 In-Reply-To: <5742D61F.2090602@redhat.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Subject: Re: [Qemu-devel] [PATCH v5 11/11] pci: Convert msi_init() to Error and fix callers to check it List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Marcel Apfelbaum , qemu-devel@nongnu.org Cc: Gerd Hoffmann , John Snow , Dmitry Fleytman , Jason Wang , "Michael S. Tsirkin" , Hannes Reinecke , Paolo Bonzini , Alex Williamson , Markus Armbruster On 05/23/2016 06:06 PM, Marcel Apfelbaum wrote: > On 05/17/2016 01:08 PM, Cao jin wrote: >> >> >> On 05/15/2016 09:41 PM, Marcel Apfelbaum wrote: >> >> >> That is why I am not quite sure about this device, msi has a relation >> with shpc. >> >> From its previous behaviour, it can be seen that it don`t treat 'on' >> as 'auto'.(I am not sure why it is different with others) >> >> Its previous behaviour treat msi_init`s failure as fatal, and lead to >> device creation fail. According to Markus`s comments(if I understand >> him right), this device has no non-msi variants. > > Actually it has. The bridge needs msi for the SHPC controller, as you said. > If you look into shpc_interrupt_update function (hw/pci/shpc.c) you can > see it can fall > back to legacy interrupts. > > The only complication here is that msi is needed only if shpc is present. > So maybe having msi=on/off/auto is OK. > > msi=auto => if shpc not present or msi broken results in msi = off, else > msi = on > msi=on => fails if shpc present and msi broken > msi=off => use legacy interrupts if shpc is present > > > Basically the msi flag has no meaning if shpc not present. > Thanks for the hint, v6 is on the way:) -- Yours Sincerely, Cao jin