From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Vrabel Subject: Re: [PATCHv2] x86/xen: during early setup, only 1:1 map the ISA region Date: Thu, 25 Jul 2013 17:48:49 +0100 Message-ID: <51F156F1.7070804@citrix.com> References: <1374503340-30560-1-git-send-email-david.vrabel@citrix.com> <51F1486C.3050908@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <51F1486C.3050908@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Aurelien Chartier Cc: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org On 25/07/13 16:46, Aurelien Chartier wrote: > On 22/07/13 15:29, David Vrabel wrote: >> From: David Vrabel >> >> During early setup, when the reserved regions and MMIO holes are being >> setup as 1:1 in the p2m, clear any mappings instead of making them 1:1 >> (execept for the ISA region which is expected to be mapped). >> >> This fixes a regression introduced in 3.5 by 83d51ab473dd (xen/setup: >> update VA mapping when releasing memory during setup) which caused >> hosts with tboot to fail to boot. >> >> tboot marks a region in the e820 map as unusable and the dom0 kernel >> would attempt to map this region and Xen does not permit unusable >> regions to be mapped by guests. >> >> (XEN) 0000000000000000 - 0000000000060000 (usable) >> (XEN) 0000000000060000 - 0000000000068000 (reserved) >> (XEN) 0000000000068000 - 000000000009e000 (usable) >> (XEN) 0000000000100000 - 0000000000800000 (usable) >> (XEN) 0000000000800000 - 0000000000972000 (unusable) >> >> tboot marked this region as unusable. >> >> (XEN) 0000000000972000 - 00000000cf200000 (usable) >> (XEN) 00000000cf200000 - 00000000cf38f000 (reserved) >> (XEN) 00000000cf38f000 - 00000000cf3ce000 (ACPI data) >> (XEN) 00000000cf3ce000 - 00000000d0000000 (reserved) >> (XEN) 00000000e0000000 - 00000000f0000000 (reserved) >> (XEN) 00000000fe000000 - 0000000100000000 (reserved) >> (XEN) 0000000100000000 - 0000000630000000 (usable) >> >> Signed-off-by: David Vrabel >> --- >> v2: Extend 1:1 mapping region to cover 0 - 1MiB. find_ibft_region() >> scans from 512 KiB and if this overlapped with a reserved region it >> would crash. > > I made more extensive testing and I was wrong, the crash I reported has > been fixed upstream. I am able to boot a 3.11-rc1 kernel without any > patch applied. However, I am still seeing errors in the log : > > (XEN) mm.c:901:d0 Error getting mfn 800 (pfn 5555555555555555) from L1 > entry 0000000000800463 for l1e_owner=0, pg_owner=0 > > David's patch is fixing those errors. > > I also tried applying that patch to 3.8.13.4, but dom0 was still > crashing at boot time : Does this (http://lists.xen.org/archives/html/xen-devel/2013-07/msg00701.html) patch work better? I do think hiding UNUSABLE regions from dom0 is the right thing to do and will be a more reliable fix going forwards, but Konrad didn't agree. David