]> xenbits.xensource.com Git - unikraft/unikraft.git/commitdiff
plat/kvm/x86: Hardcode a memory region descriptor for unmappings
authorSergiu Moga <sergiu.moga@protonmail.com>
Mon, 15 May 2023 05:40:52 +0000 (08:40 +0300)
committerUnikraft <monkey@unikraft.io>
Fri, 11 Aug 2023 10:18:45 +0000 (10:18 +0000)
Add a memory region descriptor to indicate the range we are meant to
unmap when paging is initialized and we are getting rid of the
initial static boot page tables.

Signed-off-by: Sergiu Moga <sergiu.moga@protonmail.com>
Reviewed-by: Michalis Pappas <michalis@unikraft.io>
Approved-by: Razvan Deaconescu <razvand@unikraft.io>
Tested-by: Unikraft CI <monkey@unikraft.io>
GitHub-Closes: #848

plat/kvm/x86/pagetable64.S

index 6923c12074e815190b43122f7e603a0178f7e086..f7a373fb5a57fb6563f2ada93f578df1fd975f38 100644 (file)
        .fill \pages, 0x8, 0
 .endm
 
+.align 4
+.global bpt_unmap_mrd
+bpt_unmap_mrd:
+       .quad   0x0000000000000000              /* 0 GiB */
+       .quad   0x0000000000000000              /* 0 GiB */
+       .quad   0x0000000100000000              /* 4 GiB */
+       .short  0x0000000000000000
+       .short  0x0000000000000010              /* UKPLAT_MEMRF_UNMAP */
+       .fill   36, 1, 0
+
 /* x86-64 Boot Page Table
  *
  * We map the first 4GB using max 2MB pages to keep compatibility for systems