Fixed more MMU tests with bad non-leaf A/D PTE bits

This commit is contained in:
David Harris 2025-02-27 03:37:23 -08:00
parent 28f5b5b6ed
commit d7a026e736
2 changed files with 123 additions and 123 deletions

View file

@ -85,17 +85,17 @@ finished:
.align 16
# Page table situated at 0x80010000
pagetable:
.8byte 0x200044C1
.8byte 0x300044C1 # point to invalid region of physical memory
.8byte 0x20004401
.8byte 0x30004401 # point to invalid region of physical memory
.align 12
.8byte 0x00000040200048C1
.8byte 0x00000000200048C1
.8byte 0x00000000200048C1
.8byte 0x0000004020004801
.8byte 0x0000000020004801
.8byte 0x0000000020004801
.align 12
.8byte 0x0000000020004CC1
.8byte 0x0000000020004C01
.align 12
#80000000

View file

@ -138,56 +138,56 @@ ipf:
.align 16
# root Page table situated at 0x80010000
pagetable:
.8byte 0x200044C1 // old page table was 200040 which just pointed to itself! wrong
.8byte 0x20004401 // old page table was 200040 which just pointed to itself! wrong
# next page table at 0x80011000
.align 12
.8byte 0x0000000000000000 # gigapage at 0x00000000
.8byte 0x00000000200058C1 # gigapage at 0x40000000 used for non-NAPOT with PPN bit 3 set
.8byte 0x00000000200048C1 # gigapage at 0x80000000 used for testing NAPOT huge pages
.8byte 0x00000000200050C1 # gigapage at 0xC0000000 mapped to ill-formed NAPOT with wrong PPN
.8byte 0x0000000020005801 # gigapage at 0x40000000 used for non-NAPOT with PPN bit 3 set
.8byte 0x0000000020004801 # gigapage at 0x80000000 used for testing NAPOT huge pages
.8byte 0x0000000020005001 # gigapage at 0xC0000000 mapped to ill-formed NAPOT with wrong PPN
# Next page table at 0x80012000 for gigapage at 0x80000000
.align 12
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004CC1
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
.8byte 0x0000000020004C01
# Leaf page table at 0x80013000 with NAPOT pages
.align 12
@ -262,44 +262,44 @@ pagetable:
# Next page table at 0x80014000: mega-sized, pointing to malformed NAPOT for gigapage at 0xC9000000
.align 12
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x00000000200054C1
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
.8byte 0x0000000020005401
# Leaf page table at 0x80015000 with malformed NAPOT pages (wrong PPN) starting at 0xC0000000
.align 12
@ -352,43 +352,43 @@ pagetable:
# Next page table at 0x80016000: mega-sized, pointing to properly formed PTE with 1 in PPN bit 3 for gigapage at 0x40000000
.align 12
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005CC1
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
.8byte 0x0000000020005C01
# Leaf page table at 0x80017000 with properly formed PTE with bit 4 of PPN set but no NAPOT
.align 12