From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keir Fraser Subject: Re: [PATCH 1 of 3] Enable UEFI BIOS(OVMF) support in Xen-unstable HVM Date: Sat, 23 Jul 2011 07:53:50 +0100 Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Andrei Warkentin Cc: edk2-devel@lists.sourceforge.net, Xen Devel , Jordan Justen , Bei Guan , Tim Deegan List-Id: xen-devel@lists.xenproject.org On 22/07/2011 19:38, "Andrei Warkentin" wrote: > On Fri, Jul 22, 2011 at 11:38 AM, Keir Fraser wrote: > >> Looks pretty decent. I wonder why you need to change get_shared_info() -- >> the existing mapping location is unused at the time hvmloader runs, and you >> instead map it over the top of a page of RAM. If you want shared_info mapped >> elsewhere, you can map it wherever you like as soon as your BIOS payload >> takes over. >> > > The problem is that this page lies in an unsafe for OVMF area (right > below 4GB). In a typical PC environment, > you have the firmware ROM decoding the physical address space right > below 4GB, and it also has a chunk (~64-128k) shadowed below 1MB for > legacy reasons. The EFI firmware bootstrap code is written with the > assumption that it can transfer control to code < 4GB that will > finalize the 16->PM-(>LM if 64) transitions and call C code. The > get_shared_info page overlaps code we copy up below 4GB. This is why > it was moved to a safer region. Okay, we can work with this easily enough. -- Keir