applied: https://github.com/crash-utility/crash/commit/b3c8d98691f84f0f85d7b177585c1612fa7bdd0d
On Fri, Aug 29, 2025 at 5:29 PM Tao Liu <[email protected]> wrote: > > Hi Austin, > > LGTM, so ack. > > Thanks, > Tao Liu > > On Fri, Aug 29, 2025 at 2:18 PM Austin Kim <[email protected]> wrote: > > > > Currently, 'vtop' command does not include 'PAGE DIRECTORY' information for > > RISC-V-based vmcores. Since 'PAGE DIRECTORY' is used as the root page table, > > we need this information. Note that Arm64, Arm32 and x86 vmcore shows > > 'PAGE DIRECTORY' for 'vtop' command. > > > > (before) > > crash> vtop 0xffffffff80d8e1e0 > > VIRTUAL PHYSICAL > > ffffffff80d8e1e0 40f8e1e0 > > > > PGD: ffffffff81c4fff0 => 4fffe801 > > PMD: 000000013fffa000 => 00000000103800eb > > PTE: 40e00000 => b35030414c583 > > PAGE: 002cd40c10531000 > > > > PTE PHYSICAL FLAGS > > b35030414c583 2cd40c10531000 (PRESENT|READ|DIRTY|SOFT) > > > > (after) > > crash> vtop 0xffffffff80d8e1e0 > > VIRTUAL PHYSICAL > > ffffffff80d8e1e0 40f8e1e0 > > > > PAGE DIRECTORY: ffffffff81c4f000 > > PGD: ffffffff81c4fff0 => 4fffe801 > > PMD: 000000013fffa000 => 00000000103800eb > > PTE: 40e00000 => b35030414c583 > > PAGE: 002cd40c10531000 > > > > PTE PHYSICAL FLAGS > > b35030414c583 2cd40c10531000 (PRESENT|READ|DIRTY|SOFT) > > > > Signed-off-by: Austin Kim <[email protected]> > > --- > > riscv64.c | 9 +++++++++ > > 1 file changed, 9 insertions(+) > > > > diff --git a/riscv64.c b/riscv64.c > > index 073ebb9..ef5c41d 100644 > > --- a/riscv64.c > > +++ b/riscv64.c > > @@ -634,6 +634,9 @@ riscv64_vtop_3level_4k(ulong *pgd, ulong vaddr, > > physaddr_t *paddr, int verbose) > > ulong pte_val, pte_pfn; > > ulong pt_phys; > > > > + if (verbose) > > + fprintf(fp, "PAGE DIRECTORY: %lx\n", (ulong)pgd); > > + > > /* PGD */ > > pgd_ptr = pgd + pgd_index_l3_4k(vaddr); > > FILL_PGD(pgd, KVADDR, PAGESIZE()); > > @@ -1213,6 +1216,9 @@ riscv64_vtop_4level_4k(ulong *pgd, ulong vaddr, > > physaddr_t *paddr, int verbose) > > ulong pte_val, pte_pfn; > > ulong pt_phys; > > > > + if (verbose) > > + fprintf(fp, "PAGE DIRECTORY: %lx\n", (ulong)pgd); > > + > > /* PGD */ > > pgd_ptr = pgd + pgd_index_l4_4k(vaddr); > > FILL_PGD(pgd, KVADDR, PAGESIZE()); > > @@ -1289,6 +1295,9 @@ riscv64_vtop_5level_4k(ulong *pgd, ulong vaddr, > > physaddr_t *paddr, int verbose) > > ulong pte_val, pte_pfn; > > ulong pt_phys; > > > > + if (verbose) > > + fprintf(fp, "PAGE DIRECTORY: %lx\n", (ulong)pgd); > > + > > /* PGD */ > > pgd_ptr = pgd + pgd_index_l5_4k(vaddr); > > FILL_PGD(pgd, KVADDR, PAGESIZE()); > > -- > > 2.34.1 > > -- > > Crash-utility mailing list -- [email protected] > > To unsubscribe send an email to [email protected] > > https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ > > Contribution Guidelines: https://github.com/crash-utility/crash/wiki -- Crash-utility mailing list -- [email protected] To unsubscribe send an email to [email protected] https://${domain_name}/admin/lists/devel.lists.crash-utility.osci.io/ Contribution Guidelines: https://github.com/crash-utility/crash/wiki
