From mboxrd@z Thu Jan 1 00:00:00 1970 From: Weidong Han Subject: Re: iommu=0 leading to panic when system defaults to using x2apic Date: Tue, 14 Dec 2010 16:46:43 +0800 Message-ID: <4D072EF3.5000405@intel.com> References: <4D0215E0020000780002734A@vpn.id2.novell.com> <4D0224E602000078000273AD@vpn.id2.novell.com> <749B9D3DBF0F054390025D9EAFF47F22317AA2F4@shsmsx501.ccr.corp.intel.com> <4D0257D7020000780002747B@vpn.id2.novell.com> <987664A83D2D224EAE907B061CE93D530193BB9EB8@orsmsx505.amr.corp.intel.com> <4D07372F0200007800027BBF@vpn.id2.novell.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <4D07372F0200007800027BBF@vpn.id2.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Jan Beulich Cc: "Zhang, Yang Z" , Keir Fraser , "xen-devel@lists.xensource.com" , "Kay, Allen M" List-Id: xen-devel@lists.xenproject.org Jan Beulich wrote: >>>> On 10.12.10 at 19:26, "Kay, Allen M" wrote: >>>> >> The architectural requirement is actually between interrupt remapping and >> x2apic. Since interrupt remapping is part of the VT-d feature so current >> software requires all VT-d features enabled in order for x2apic to be enabled. >> >> Strictly speaking DMA remapping is not required for x2apic. However, queued >> invalidation is required since interrupt remapping requires queued >> invalidation. So x2apic dependency is as follows: >> >> x2apic->interrupt remapping->queued invalidation >> >> Due to historical reasons, the new VT-d features were built on top of the old >> ones as they become available. Is there a requirement to separate this out? >> If so, we will need to re-design iommu boot parameter which took a while to >> get it right so most systems can now boot successfully. >> > > And why is it that Xen panics when the BIOS pre-enabled x2apic > mode without also enabling interrupt re-mapping, while Linux > (afaict from looking at 2.6.32 code and output from an affected > machine) simply enables interrupt re-mapping in this case? > > Thanks, Jan > > x2apic spec 2.9 section states: The default will be for the BIOS to pass the control to the OS with the local x2APICs in xAPIC mode if all x2APIC IDs reported by CPUID.0BH:EDX are less than 255, and in x2APIC mode if there are any logical processor reporting its x2APIC ID at 255 or greater. If BIOS transitions to Xen with x2APIC enabled, there must be APIC ID > 255, which requires interrupt remapping. So we added code to check such BIOS issue. Regards, Weidong