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 14:39:10 -0700 Message-ID: <7162ab21003091339i4adb8669safd5e074607386a2@mail.gmail.com> References: <4B59098B.6000108@intel.com> <4B590FA4.4000008@jp.fujitsu.com> <4B59132B.40607@intel.com> <4B59188C.50901@jp.fujitsu.com> <4B59660F.4000909@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <4B59660F.4000909@intel.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: Weidong Han Cc: "xen-devel@lists.xensource.com" , Noboru Iwamatsu , "Cihula, Joseph" , "Kay, Allen M" , "linux@eikelenboom.it" , "keir.fraser@eu.citrix.com" List-Id: xen-devel@lists.xenproject.org On Fri, Jan 22, 2010 at 1:47 AM, Weidong Han wrote: > I implemented a patch and attached. > > patch description: > =C2=A0 In order to make Xen more defensive to VT-d related BIOS issue, th= is patch > ignores a DRHD if all devices under its scope are not pci discoverable, a= nd > regards a DRHD as invalid and then disable whole VT-d if some devices und= er > its scope are not pci discoverable. But if iommu=3Dforce is set, it will > enable all DRHDs reported by BIOS, to avoid any security vulnerability wi= th > malicious s/s re-enabling "supposed disabled" devices. =C2=A0Pls note tha= t we > don't know the devices under the "Include_all" DRHD are existent or not, > because the scope of "Include_all" DRHD =C2=A0won't enumerate common pci = device, > it only enumerates I/OxAPIC and HPET devices. Hi All, I have a system with what I consider to be a valid DRHD that's getting tripped up on this patch. The problem is that the DRHD includes an IOAPIC scope, where the IOAPIC is not materialized on the PCI bus. I think Xen is being overzealous in it's validity checking and that this is a valid configuration. What do others think? Are IOAPICs a special case that we can allow to be non-existent on the PCI bus? Thanks, Alex