[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH RFC 1/6] xen/arm: mm: Remove special case for CPU0 in dump_hyp_walk()
From: Stefano Stabellini <sstabellini@xxxxxxxxxx> There is no need to have a special case for CPU0 when converting the page-table virtual address into a physical address. The helper virt_to_maddr() is able to translate any address as long as the root page-tables is mapped in the virtual address. This is the case for all the CPUs at the moment. So use the same BUG_ON() regardless the CPU. Signed-off-by: Stefano Stabellini <stefano.stabellini@xxxxxxxxxx> [julien: Rework the commit message] Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx> --- I went back through the conversation in [1] regarding the issue when loading Xen below 2MB on Arm32. The example provided is wrong because to find the physical address, we need to add 'phys_offset', not substract. So I removed the comment regarding the code was buggy. [1] https://marc.info/?l=xen-devel&m=157081398022401 --- xen/arch/arm/mm.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c index 9c4b26bf079b..4dd886f7c80d 100644 --- a/xen/arch/arm/mm.c +++ b/xen/arch/arm/mm.c @@ -284,10 +284,7 @@ void dump_hyp_walk(vaddr_t addr) "on CPU%d via TTBR 0x%016"PRIx64"\n", addr, smp_processor_id(), ttbr); - if ( smp_processor_id() == 0 ) - BUG_ON( (lpae_t *)(unsigned long)(ttbr - phys_offset) != pgtable ); - else - BUG_ON( virt_to_maddr(pgtable) != ttbr ); + BUG_ON( virt_to_maddr(pgtable) != ttbr ); dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1); } -- 2.17.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |