[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen master] xen/arm: mm: Allow dump_hyp_walk() to work on the current root table



commit 88168c418c3bde7d51797e7cf875d528a8aa0eb1
Author:     Julien Grall <jgrall@xxxxxxxxxx>
AuthorDate: Thu Dec 15 11:45:18 2022 +0000
Commit:     Julien Grall <jgrall@xxxxxxxxxx>
CommitDate: Thu Dec 15 11:46:37 2022 +0000

    xen/arm: mm: Allow dump_hyp_walk() to work on the current root table
    
    dump_hyp_walk() is used to print the tables walk in case of the data or
    instruction abort.
    
    Those abort are not limited to the runtime and could happen at early
    boot. However, the current implementation of dump_hyp_walk() check
    that the TTBR matches the runtime page tables.
    
    Therefore, early abort will result to a secondary abort and not
    print the table walks.
    
    Given that the function is called in the abort path, there is no
    reason for us to keep the BUG_ON() in any form. So drop it.
    
    Signed-off-by: Julien Grall <jgrall@xxxxxxxxxx>
    Acked-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
---
 xen/arch/arm/mm.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
index 16ec1d0fe9..0fc6f2992d 100644
--- a/xen/arch/arm/mm.c
+++ b/xen/arch/arm/mm.c
@@ -266,13 +266,11 @@ void dump_pt_walk(paddr_t ttbr, paddr_t addr,
 void dump_hyp_walk(vaddr_t addr)
 {
     uint64_t ttbr = READ_SYSREG64(TTBR0_EL2);
-    lpae_t *pgtable = THIS_CPU_PGTABLE;
 
     printk("Walking Hypervisor VA 0x%"PRIvaddr" "
            "on CPU%d via TTBR 0x%016"PRIx64"\n",
            addr, smp_processor_id(), ttbr);
 
-    BUG_ON( virt_to_maddr(pgtable) != ttbr );
     dump_pt_walk(ttbr, addr, HYP_PT_ROOT_LEVEL, 1);
 }
 
--
generated by git-patchbot for /home/xen/git/xen.git#master



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.