From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH] VT-d: improve RMRR validity checking Date: Tue, 9 Mar 2010 19:13:47 -0700 Message-ID: <7162ab21003091813m764b0ec5ofb1d97bc65d7f93d@mail.gmail.com> References: <4B59132B.40607@intel.com> <4B59188C.50901@jp.fujitsu.com> <4B59660F.4000909@intel.com> <7162ab21003091339i4adb8669safd5e074607386a2@mail.gmail.com> <20100309213026.GA12602@phenom.dumpdata.com> <7162ab21003091357v32b3c58qae708301fdf2764a@mail.gmail.com> <20100309222229.GA700@phenom.dumpdata.com> <1268175900.14039.142.camel@8530w.home> <7162ab21003091525w11e8fc2cmba9264accaa04906@mail.gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <7162ab21003091525w11e8fc2cmba9264accaa04906@mail.gmail.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: Konrad Rzeszutek Wilk Cc: "xen-devel@lists.xensource.com" , Noboru Iwamatsu , "Kay, Allen M" , "Cihula, Joseph" , Weidong Han , "linux@eikelenboom.it" , "keir.fraser@eu.citrix.com" List-Id: xen-devel@lists.xenproject.org On Tue, Mar 9, 2010 at 4:25 PM, Alex Williamson wr= ote: > On Tue, Mar 9, 2010 at 4:05 PM, Alex Williamson = wrote: >> >> In my case ir_ioapic_num will match nr_ioapics, so this shouldn't >> disable on my system. >> >> The problem with the current Xen code is that there's no requirement >> that an IOAPIC is a PCI device, yet we have to describe it as a device >> scope under a DRHD to enable interrupt remapping. =C2=A0That means we ha= ve to >> fill in the scope path with something, even if there's no device visible >> there. =C2=A0We happen to use the path of the IOAPIC if it were exposed = so we >> can keep straight what it is, but nothing requires it to be enumerable >> on the PCI bus. > > I guess we probably do need to use the actual IOAPIC PCI source ID so > we can enable source ID checking in the interrupt remapping table, but > I still don't think that implies it needs to be visible on a bus walk. > >> =C2=A0IMHO, the only important field in an IOAPIC DRHD scope >> is the enumeration ID, which allows the OS/VMM to map the IOAPIC to one >> defined in the MADT. > > So actually, I might make the argument that the purpose of IOAPIC scope i= s: > 1) Map an MADT defined APIC ID under a DRHD > 2) Provide the source ID for the IOAPIC > > Using the source ID to verify the IOAPIC exists isn't valid, though I > think it would be valid to verify the APIC ID against the MADT. Not to beat a dead horse, but I believe my platform is exactly following sections 8.3.1.1 of the VT-d spec for non-PCI discoverable IOAPICs with a 2 byte path field. This really needs to be fixed or removed before Xen 4.0.0. Thanks, Alex