-
Notifications
You must be signed in to change notification settings - Fork 24
Improve PTDUMP and introduce new fields #206
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: rvck-6.6
Are you sure you want to change the base?
Conversation
|
开始测试 log: https://github.com/RVCK-Project/rvck/actions/runs/21475412754 参数解析结果
测试完成 详细结果:RVCK result
Kunit Test Result[10:59:38] Testing complete. Ran 455 tests: passed: 443, skipped: 12 Kernel Build ResultKernel build succeeded: RVCK-Project/rvck/206/ 1094c0f03e09063014d6c3c26584d0a9 /srv/guix_result/6e8f0bd204ef49f05aa224a769612ea171d63c39/Image LAVA Checkargs:
result:Lava check done! lava log: https://lava.oerv.ac.cn/scheduler/job/1234 lava result count: [fail]: 175, [pass]: 1433, [skip]: 291 Check Patch Result
|
6e7299d to
3fb06be
Compare
|
分支已经滚动,请尽快rebase。 |
|
开始测试 log: https://github.com/RVCK-Project/rvck/actions/runs/21575430992 参数解析结果
测试完成 详细结果:RVCK result
Kunit Test Result[02:43:01] Testing complete. Ran 455 tests: passed: 443, skipped: 12 Kernel Build ResultKernel build failed. Check Patch Result
|
|
开始测试 log: https://github.com/RVCK-Project/rvck/actions/runs/21575451367 参数解析结果
测试完成 详细结果:RVCK result
Kunit Test Result[02:44:18] Testing complete. Ran 455 tests: passed: 443, skipped: 12 Kernel Build ResultKernel build failed. Check Patch Result
|
RSW field can be used to encode 2 bits of software defined information. Currently, PTDUMP only prints "RSW" when its value is 1 or 3. To fix this issue and improve the debugging experience with PTDUMP, we redefine _PAGE_SPECIAL to its original value and use _PAGE_SOFT as the RSW mask, allow it to print the RSW with any non-zero value. This patch also removes the val from the struct prot_bits as it is no longer needed. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com> Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com> Link: https://lore.kernel.org/r/20230921025022.3989723-2-peterlin@andestech.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This patch introduces the PBMT field to the PTDUMP, so it can display the memory attributes for NC or IO. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com> Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com> Link: https://lore.kernel.org/r/20230921025022.3989723-3-peterlin@andestech.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
This patch introduces the NAPOT field to PTDUMP, allowing it to display the letter "N" for pages that have the 63rd bit set. Signed-off-by: Yu Chien Peter Lin <peterlin@andestech.com> Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com> Tested-by: Alexandre Ghiti <alexghiti@rivosinc.com> Link: https://lore.kernel.org/r/20230921025022.3989723-4-peterlin@andestech.com Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
|
开始测试 log: https://github.com/RVCK-Project/rvck/actions/runs/21575688889 参数解析结果
测试完成 详细结果:RVCK result
Kunit Test Result[02:57:59] Testing complete. Ran 455 tests: passed: 443, skipped: 12 Kernel Build ResultKernel build failed. Check Patch Result
|
|
开始测试 log: https://github.com/RVCK-Project/rvck/actions/runs/21575688855 参数解析结果
测试完成 详细结果:RVCK result
Kunit Test Result[02:57:45] Testing complete. Ran 455 tests: passed: 443, skipped: 12 Kernel Build ResultKernel build failed. Check Patch Result
|
The ptdump (page table dump) feature in the Linux kernel prints the virtual memory page table structure, helping developers visualize address mappings, verify memory permissions, and debug issues like page faults or incorrect translations—especially useful during kernel bring-up and memory subsystem debugging. |
The original RISC-V ptdump implementation does not include the PBMT and NAPOT fields, which are memory attributes for NC, IO, or N. This series of patches enhances this information. The testing methodology can be found at https://docs.kernel.org/arch/arm64/ptdump.html as follows: Before enhancement: After enhancement: |
commit: https://lore.kernel.org/all/20230921025022.3989723-1-peterlin@andestech.com/
This patchset enhances PTDUMP by providing additional information from pagetable entries.
The first patch fixes the RSW field, while the second and third patches introduce the PBMT and NAPOT fields, respectively, for RV64 systems.