[LINUX][X86_64] P2M map must be allocated on page aligned boundary.

Otherwise save/restore can break.
Signed-off-by: Kazuo Moriwaka <moriwaka@valinux.co.jp>
This commit is contained in:
kaf24@firebug.cl.cam.ac.uk committed 2006-08-30 17:56:49 +01:00
1 parent 33d0648f73
commit c398044d5d
1 file changed
+3 -3
@@ -846,7 +846,7 @@ void __init setup_arch(char **cmdline_p)
if (!xen_feature(XENFEAT_auto_translated_physmap)) {
/* Make sure we have a large enough P->M table. */
phys_to_machine_mapping = alloc_bootmem(
phys_to_machine_mapping = alloc_bootmem_pages(
end_pfn * sizeof(unsigned long));
memset(phys_to_machine_mapping, ~0,
end_pfn * sizeof(unsigned long));
@@ -863,7 +863,7 @@ void __init setup_arch(char **cmdline_p)
* list of frames that make up the p2m table. Used by
* save/restore.
*/
pfn_to_mfn_frame_list_list = alloc_bootmem(PAGE_SIZE);
pfn_to_mfn_frame_list_list = alloc_bootmem_pages(PAGE_SIZE);
HYPERVISOR_shared_info->arch.pfn_to_mfn_frame_list_list =
virt_to_mfn(pfn_to_mfn_frame_list_list);
@@ -873,7 +873,7 @@ void __init setup_arch(char **cmdline_p)
k++;
BUG_ON(k>=fpp);
pfn_to_mfn_frame_list[k] =
alloc_bootmem(PAGE_SIZE);
alloc_bootmem_pages(PAGE_SIZE);
pfn_to_mfn_frame_list_list[k] =
virt_to_mfn(pfn_to_mfn_frame_list[k]);
j=0;
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.