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

[Xen-ia64-devel] Bug with dom0 large enough memmap trick



Hi,

this issue will be moot with P2M/VP but it is here.

The last granule is computed from max_page:

   printf("find_memory: efi_memmap_walk returns max_page=%lx\n",max_page);
    /* this is a bad hack.  see dom_fw.c creation of EFI map for dom0 */
    max_page = (GRANULEROUNDDOWN(max_page << PAGE_SHIFT)
        - IA64_GRANULE_SIZE) >> PAGE_SHIFT;
    printf("find_memory: last granule reserved for dom0; xen max_page=%lx\n",
        max_page);

But we don't check there is no reserved data/code within this page.  Because 
this memory
is given to dom0 as conventionnal memory
  /* hack */ 
MAKE_MD(EFI_CONVENTIONAL_MEMORY,EFI_MEMORY_WB,last_start,last_end,1);
this hack may erase PAL/SAL/EFI code or data.

Tristan.



_______________________________________________
Xen-ia64-devel mailing list
Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-ia64-devel


 


Rackspace

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