diff options
author | 2014-12-23 01:12:33 +0000 | |
---|---|---|
committer | 2014-12-23 01:12:33 +0000 | |
commit | 57f11335980ebade044bd70910733d76d9a90a8d (patch) | |
tree | a11219e290662e0faa6049ac9978e616f69fdf39 /sys | |
parent | Move PD_MASK, PT_MASK and a couple macros into pmap.c. The only other (diff) | |
download | wireguard-openbsd-57f11335980ebade044bd70910733d76d9a90a8d.tar.xz wireguard-openbsd-57f11335980ebade044bd70910733d76d9a90a8d.zip |
force the pool of pmapvp onto PAGE_SIZE allocations by specifying a
pool allocator. pmapvp is 1024 bytes, and the size * 8 change in pools
without an allocator being specified tries to place it on large pages.
you need pmap to use large pages, and pmap isnt set up yet.
fixed a very early fault on macppc.
debugged with and tested by krw@
ok deraadt@ krw@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/arch/powerpc/powerpc/pmap.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/powerpc/powerpc/pmap.c b/sys/arch/powerpc/powerpc/pmap.c index e36de00b33f..44fa231717a 100644 --- a/sys/arch/powerpc/powerpc/pmap.c +++ b/sys/arch/powerpc/powerpc/pmap.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pmap.c,v 1.135 2014/12/17 14:40:03 deraadt Exp $ */ +/* $OpenBSD: pmap.c,v 1.136 2014/12/23 01:12:33 dlg Exp $ */ /* * Copyright (c) 2001, 2002, 2007 Dale Rahn. @@ -2209,7 +2209,8 @@ pmap_init() { pool_init(&pmap_pmap_pool, sizeof(struct pmap), 0, 0, 0, "pmap", NULL); pool_setlowat(&pmap_pmap_pool, 2); - pool_init(&pmap_vp_pool, sizeof(struct pmapvp), 0, 0, 0, "vp", NULL); + pool_init(&pmap_vp_pool, sizeof(struct pmapvp), 0, 0, 0, "vp", + &pool_allocator_nointr); pool_setlowat(&pmap_vp_pool, 10); pool_init(&pmap_pted_pool, sizeof(struct pte_desc), 0, 0, 0, "pted", NULL); |