EFI uses 4k page, while xen uses 16k page.
For dom0, identity mapping are setup for EFI_ACPI_RECLAIM_MEMORY etc.
It is possible when seting up dom0 memory range which may include some
EFI_ACPI_RECLAIM_MEMORY due to 4k/16k alignment difference.
This patch fix this issue by scaning memory descriptors twice
in the first scan, setup dom0 identity mapping
in the seconde scan, setup dom0 memory mapping.


I have a machine with below memory descriptors
When xen setup dom0 p2m for BS_data
"000000003FFAC000-000000003FFD9FFF  000000000000002E 000000000000000F"
It also setup dom0 p2m for "000000003FFDA000-000000003FFDBFFF"

When xen wants to setup identity p2m for 'ACPI_recl
000000003FFDA000-000000003FFDBFFF  0000000000000002 000000000000000F"
This address space has been setup, this identity p2m setup fails without
error.
In my case, this memory block "ACPI_recl
000000003FFDA000-000000003FFDBFFF  0000000000000002 000000000000000F"
happens to save ACPI tables, then dom0 can't boot due to can't find some
ACPI tables.



available  000000003EC00000-000000003FF97FFF  0000000000001398
000000000000000F
ACPI_recl  000000003FF98000-000000003FFA7FFF  0000000000000010
000000000000000F
ACPI_NVS   000000003FFA8000-000000003FFA9FFF  0000000000000002
000000000000000F
ACPI_recl  000000003FFAA000-000000003FFABFFF  0000000000000002
000000000000000F
BS_data    000000003FFAC000-000000003FFD9FFF  000000000000002E
000000000000000F
ACPI_recl  000000003FFDA000-000000003FFDBFFF  0000000000000002
000000000000000F


Signed-off-by: Anthony Xu < [EMAIL PROTECTED] >


Thanks,
Anthony

Attachment: dom0_p2m_fix.patch
Description: dom0_p2m_fix.patch

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

Reply via email to