[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [Xen 4.12 bug] HVM/PVH boot confusion



On Wed, Jan 30, 2019 at 02:49:52PM +0100, Juergen Gross wrote:
> On 30/01/2019 14:38, Wei Liu wrote:
> > On Wed, Jan 30, 2019 at 12:46:45PM +0000, Wei Liu wrote:
> >> On Wed, Jan 30, 2019 at 12:30:44PM +0000, Andrew Cooper wrote:
> >>>>> There are at least two bugs here.
> >>>>>
> >>>>> 1) RSDP was a late addition to the PVH boot protocol.  Xen's PVH
> >>>>> entrypoint must not mandate its existence, because there are releases of
> >>>>> the domain builder which don't provide it.
> >>>> The inner Xen, in this case, can fall back to scanning low 1MB memory
> >>>> for RSDP.
> >>>
> >>> Agreed.
> > 
> > ---8<---
> > From 46e3686355da177955ca63ce3e8cf6a80cdb897d Mon Sep 17 00:00:00 2001
> > From: Wei Liu <wei.liu2@xxxxxxxxxx>
> > Date: Wed, 30 Jan 2019 13:31:32 +0000
> > Subject: [PATCH] x86/pvh: don't mandate presence of RSDP pointer
> > 
> > RSDP hint is not mandatory according to PVH spec. Only set the hint if
> > pvh_info contains a valid pointer. The guest (xen) will fall back to
> > scanning for RSDP in lower 1MB of memory.
> > 
> > Reported-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
> > Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx>
> > ---
> >  xen/arch/x86/guest/pvh-boot.c | 4 ++--
> >  1 file changed, 2 insertions(+), 2 deletions(-)
> > 
> > diff --git a/xen/arch/x86/guest/pvh-boot.c b/xen/arch/x86/guest/pvh-boot.c
> > index 544775eeb4..c6e21fa83b 100644
> > --- a/xen/arch/x86/guest/pvh-boot.c
> > +++ b/xen/arch/x86/guest/pvh-boot.c
> > @@ -79,8 +79,8 @@ static void __init convert_pvh_info(multiboot_info_t 
> > **mbi,
> >          pvh_mbi_mods[i].string    = entry[i].cmdline_paddr;
> >      }
> >  
> > -    BUG_ON(!pvh_info->rsdp_paddr);
> > -    rsdp_hint = pvh_info->rsdp_paddr;
> > +    if ( pvh_info->rsdp_paddr )
> 
> Why do you need the if here? rsdp_hint is NULL initially.
> 
> So just removing the BUG_ON() seems to be required.

Good point.

Wei.

> 
> 
> Juergen
> 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.