CCing Paolo On Tue, Mar 03, 2020 at 02:52:47AM -0800, Joe Richey wrote: > From: Joe Richey <joeric...@google.com> > > Right now the PVH option rom scans for the RSDP from 0xE0000 to > 0xE1FFF. This is probobly a typo, it should scan from 0xE0000 to > 0xFFFFF. > > This is actually an issue on some QEMU versions/machines. For example, > when I run QEMU the RSDP is placed at 0xf5ad0 which will not be picked > up by the current implementation. > > This bug still allows a Linux guest to boot (in most configurations) as > the kernel will just scan for the RSDP if one isn't provided. > > Signed-off-by: Joe Richey <joeric...@google.com> > --- > pc-bios/optionrom/pvh_main.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/pc-bios/optionrom/pvh_main.c b/pc-bios/optionrom/pvh_main.c > index a015e1bf22..28e79d7fc4 100644 > --- a/pc-bios/optionrom/pvh_main.c > +++ b/pc-bios/optionrom/pvh_main.c > @@ -29,7 +29,7 @@ asm (".code32"); /* this code will be executed in protected > mode */ > > #define RSDP_SIGNATURE 0x2052545020445352LL /* "RSD PTR " */ > #define RSDP_AREA_ADDR 0x000E0000 > -#define RSDP_AREA_SIZE 2048 > +#define RSDP_AREA_SIZE 0x00020000 > #define EBDA_BASE_ADDR 0x0000040E > #define EBDA_SIZE 1024 >
The patch LGTM! When I wrote this code I followed [1], where it is written that it can be found in the "memory region from 0x000E0000 to 0x000FFFFF", so it should be a typo. Thanks for fixing it! Fixes: 2785dc7b17 ("optionrom: add new PVH option rom") Reviewed-by: Stefano Garzarella <sgarz...@redhat.com> [1] https://wiki.osdev.org/RSDP#Detecting_the_RSDP