Page MenuHomeFreeBSD

D54307.diff
No OneTemporary

D54307.diff

diff --git a/sys/arm64/arm64/pmap.c b/sys/arm64/arm64/pmap.c
--- a/sys/arm64/arm64/pmap.c
+++ b/sys/arm64/arm64/pmap.c
@@ -9614,8 +9614,7 @@
for (i = 0; i < count; i++) {
paddr = VM_PAGE_TO_PHYS(page[i]);
if (!PHYS_IN_DMAP(paddr)) {
- panic(
- "pmap_map_io_transient: TODO: Map out of DMAP data");
+ pmap_qenter(vaddr[i], &page[i], 1);
}
}
@@ -9634,7 +9633,8 @@
for (i = 0; i < count; i++) {
paddr = VM_PAGE_TO_PHYS(page[i]);
if (!PHYS_IN_DMAP(paddr)) {
- panic("ARM64TODO: pmap_unmap_io_transient: Unmap data");
+ pmap_qremove(vaddr[i], 1);
+ vmem_free(kernel_arena, vaddr[i], PAGE_SIZE);
}
}
}

File Metadata

Mime Type
text/plain
Expires
Sat, Dec 20, 4:59 PM (19 h, 53 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27098272
Default Alt Text
D54307.diff (641 B)

Event Timeline