Had the diff below in my tree for a very long time. Switch several
uvm_km_alloc()/uvm_km_valloc() calls over to km_alloc().
ok?
Index: i386/i386/bios.c
===================================================================
RCS file: /cvs/src/sys/arch/i386/i386/bios.c,v
retrieving revision 1.119
diff -u -p -r1.119 bios.c
--- i386/i386/bios.c 23 Aug 2018 14:47:52 -0000 1.119
+++ i386/i386/bios.c 22 Oct 2018 18:38:55 -0000
@@ -266,7 +266,8 @@ biosattach(struct device *parent, struct
pa = trunc_page(sh->addr);
end = round_page(sh->addr + sh->size);
- eva = uvm_km_valloc(kernel_map, end-pa);
+ eva = (vaddr_t)km_alloc(end-pa, &kv_any,
+ &kp_none, &kd_nowait);
if (eva == 0)
break;
@@ -661,7 +662,7 @@ bios32_service(u_int32_t service, bios32
endpa = round_page(BIOS32_END);
- sva = va = uvm_km_valloc(kernel_map, endpa);
+ sva = va = (vaddr_t)km_alloc(endpa, &kv_any, &kp_none, &kd_nowait);
if (va == 0)
return (0);
@@ -710,7 +711,8 @@ bios32_cleanup(void)
pmap_remove(pmap_kernel(), va, va + PAGE_SIZE);
}
- uvm_km_free(kernel_map, bios_softc->bios32_service_va, size);
+ km_free((void *)bios_softc->bios32_service_va, size,
+ &kv_any, &kp_none);
}
int
Index: i386/i386/cpu.c
===================================================================
RCS file: /cvs/src/sys/arch/i386/i386/cpu.c,v
retrieving revision 1.95
diff -u -p -r1.95 cpu.c
--- i386/i386/cpu.c 23 Aug 2018 14:47:52 -0000 1.95
+++ i386/i386/cpu.c 22 Oct 2018 18:38:55 -0000
@@ -289,7 +289,7 @@ cpu_attach(struct device *parent, struct
* Allocate UPAGES contiguous pages for the idle PCB and stack.
*/
- kstack = uvm_km_alloc(kernel_map, USPACE);
+ kstack = (vaddr_t)km_alloc(USPACE, &kv_any, &kp_dirty, &kd_nowait);
if (kstack == 0) {
if (cpunum == 0) { /* XXX */
panic("cpu_attach: unable to allocate idle stack for"
Index: amd64/amd64/acpi_machdep.c
===================================================================
RCS file: /cvs/src/sys/arch/amd64/amd64/acpi_machdep.c,v
retrieving revision 1.85
diff -u -p -r1.85 acpi_machdep.c
--- amd64/amd64/acpi_machdep.c 19 Aug 2018 08:23:47 -0000 1.85
+++ amd64/amd64/acpi_machdep.c 22 Oct 2018 18:38:55 -0000
@@ -106,7 +106,8 @@ acpi_map(paddr_t pa, size_t len, struct
{
paddr_t pgpa = trunc_page(pa);
paddr_t endpa = round_page(pa + len);
- vaddr_t va = uvm_km_valloc(kernel_map, endpa - pgpa);
+ vaddr_t va = (vaddr_t)km_alloc(endpa - pgpa, &kv_any, &kp_none,
+ &kd_nowait);
if (va == 0)
return (ENOMEM);
@@ -129,7 +130,7 @@ void
acpi_unmap(struct acpi_mem_map *handle)
{
pmap_kremove(handle->baseva, handle->vsize);
- uvm_km_free(kernel_map, handle->baseva, handle->vsize);
+ km_free((void *)handle->baseva, handle->vsize, &kv_any, &kp_none);
}
int
Index: amd64/amd64/bios.c
===================================================================
RCS file: /cvs/src/sys/arch/amd64/amd64/bios.c,v
retrieving revision 1.36
diff -u -p -r1.36 bios.c
--- amd64/amd64/bios.c 28 Apr 2018 15:44:59 -0000 1.36
+++ amd64/amd64/bios.c 22 Oct 2018 18:38:55 -0000
@@ -108,7 +108,7 @@ bios_attach(struct device *parent, struc
if (hdr != NULL) {
pa = trunc_page(hdr->addr);
end = round_page(hdr->addr + hdr->size);
- va = uvm_km_valloc(kernel_map, end-pa);
+ va = (vaddr_t)km_alloc(end-pa, &kv_any, &kp_none, &kd_nowait);
if (va == 0)
goto out;
Index: amd64/amd64/cpu.c
===================================================================
RCS file: /cvs/src/sys/arch/amd64/amd64/cpu.c,v
retrieving revision 1.129
diff -u -p -r1.129 cpu.c
--- amd64/amd64/cpu.c 4 Oct 2018 05:00:40 -0000 1.129
+++ amd64/amd64/cpu.c 22 Oct 2018 18:38:55 -0000
@@ -417,7 +417,7 @@ cpu_attach(struct device *parent, struct
/*
* Allocate UPAGES contiguous pages for the idle PCB and stack.
*/
- kstack = uvm_km_alloc (kernel_map, USPACE);
+ kstack = (vaddr_t)km_alloc(USPACE, &kv_any, &kp_dirty, &kd_nowait);
if (kstack == 0) {
if (caa->cpu_role != CPU_ROLE_AP) {
panic("cpu_attach: unable to allocate idle stack for"