|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 07/40] xen/arm64: add .text.idmap for Xen identity map sections
Hi, On 13/01/2023 05:28, Penny Zheng wrote: From: Wei Chen <wei.chen@xxxxxxx> Only the first 4KB of Xen image will be mapped as identity (PA == VA). At the moment, Xen guarantees this by having everything that needs to be used in the identity mapping in head.S before _end_boot and checking at link time if this fits in 4KB. In previous patch, we have moved the MMU code outside of head.S. Although we have added .text.header to the new file to guarantee all identity map code still in the first 4KB. However, the order of these two files on this 4KB depends on the build tools. Currently, we use the build tools to process the order of objs in the Makefile to ensure that head.S must be at the top. But if you change to another build tools, it may not be the same result. Right, so this is fixing a bug you introduced in the previous patch. We should really avoid introducing (latent) regression in a series. So please re-order the patches. In this patch we introduce .text.idmap to head_mmu.S, and add this section after .text.header. to ensure code of head_mmu.S after the code of header.S. After this, we will still include some code that does not belong to identity map before _end_boot. Because we havemoved _end_boot to head_mmu.S. I dislike this approach because you are expecting that only head_mmu.S will be part of .text.idmap. If it is not, everything could blow up again. That said, if you look at staging, you will notice that now _end_boot is defined in the linker script to avoid any issue.
I would argue that puts wants to be part of the idmap.
Cheers, -- Julien Grall
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |