mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
xen/arm: mm: Don't open-code Xen PT update in remove_early_mappings()
Now that xen_pt_update_entry() is able to deal with different mapping size, we can replace the open-coding of the page-tables update by a call to modify_xen_mappings(). As the function is not meant to fail, a BUG_ON() is added to check the return. Note that we don't use destroy_xen_mappings() because the helper doesn't allow us to pass a flags. In theory we could add an extra parameter to the function, however there are no other expected users. Hence why modify_xen_mappings() is used. Signed-off-by: Julien Grall <julien.grall@arm.com> Signed-off-by: Julien Grall <jgrall@amazon.com> Reviewed-by: Hongda Deng <Hongda.Heng@arm.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
This commit is contained in:
1 parent
07d11f63d0
commit
6eb5a93964
1 file changed
+6
-5
+6
-5
@@ -614,11 +614,12 @@ void * __init early_fdt_map(paddr_t fdt_paddr)
|
||||
|
||||
void __init remove_early_mappings(void)
|
||||
{
|
||||
lpae_t pte = {0};
|
||||
write_pte(xen_second + second_table_offset(BOOT_FDT_VIRT_START), pte);
|
||||
write_pte(xen_second + second_table_offset(BOOT_FDT_VIRT_START + SZ_2M),
|
||||
pte);
|
||||
flush_xen_tlb_range_va(BOOT_FDT_VIRT_START, BOOT_FDT_SLOT_SIZE);
|
||||
int rc;
|
||||
|
||||
/* destroy the _PAGE_BLOCK mapping */
|
||||
rc = modify_xen_mappings(BOOT_FDT_VIRT_START, BOOT_FDT_VIRT_END,
|
||||
_PAGE_BLOCK);
|
||||
BUG_ON(rc);
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||