nuttx/arch
liang.huang 1653db7ddc riscv: Fix page table traversal for SV39
With CONFIG_PAGING enabled and the RISC-V SV39 MMU active, the page fault
handler incorrectly tracked page table levels: `ptprev` pointed to the L1
page table while `ptlevel` indicated L2. This inconsistency caused faulty
virtual address resolution.

This commit fixes the traversal logic to ensure consistent level tracking
across all three page table levels (L1–L3), enabling reliable page fault
handling and on-demand paging.

Additional changes:
- Set PGT_L3_SIZE to 2048 to enable mapping up to 8MB of address space.
- Update knsh_paging config to avoid crashes caused by excessive memory
  alignment requirements.
- Add knsh64_paging config to verify this commit works as expected.

Signed-off-by: liang.huang <liang.huang@houmo.ai>
2026-02-04 11:52:04 -03:00
..
arm toolchain/arm/clang:Update clang compilation specifications 2026-02-04 02:33:36 +08:00
arm64 arm64: Add kmalloc header for arch timer 2026-02-03 11:45:31 -05:00
avr sched/signal: Optimize code logic 2026-01-27 21:24:31 +08:00
ceva protect: move us_heap to userspace_data_s 2026-02-02 11:06:53 +08:00
dummy
hc netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
mips netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
misoc netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
or1k sched/signal: Optimize code logic 2026-01-27 21:24:31 +08:00
renesas netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
risc-v riscv: Fix page table traversal for SV39 2026-02-04 11:52:04 -03:00
sim arch/sim: Add sigdelset to nuttx-names.in 2026-01-31 14:14:32 +08:00
sparc sched/signal: Optimize code logic 2026-01-27 21:24:31 +08:00
tricore sched/signal: Optimize code logic 2026-01-27 21:24:31 +08:00
x86 arch/x86: fixed errors in gdt_flush and idt_flush 2026-02-02 22:58:02 +08:00
x86_64 arch/x86_64: replaced loop construct with rep movsb 2026-02-02 13:58:10 +08:00
xtensa arch/xtensa: replace critical_section with spinlock. 2026-02-02 21:17:20 +08:00
z16 sched/signal: Optimize code logic 2026-01-27 21:24:31 +08:00
z80 netdev_driver: add carrier_on to xxx_ifup where carrier_on is absent 2026-02-02 13:23:05 +08:00
CMakeLists.txt
Kconfig shced/irq: Add up_irq_to_ndx interface 2026-01-27 10:34:13 +08:00