diff options
author | jchandra <jchandra@FreeBSD.org> | 2010-12-09 06:34:28 +0000 |
---|---|---|
committer | jchandra <jchandra@FreeBSD.org> | 2010-12-09 06:34:28 +0000 |
commit | 603a66e11639c76d8e0f3b1f21c346cf6a5d93b9 (patch) | |
tree | 3cae870c9bf59459a622cb984c1665b3481f53e6 /sys/mips/include | |
parent | f88dac0410229a9c125b7586295dee9ecae57212 (diff) | |
download | FreeBSD-src-603a66e11639c76d8e0f3b1f21c346cf6a5d93b9.zip FreeBSD-src-603a66e11639c76d8e0f3b1f21c346cf6a5d93b9.tar.gz |
UMA_MD_SMALL_ALLOC for mips.
Implement uma_small_alloc() and uma_small_free() for mips that allocates
pages from direct mapped memory. Uses the same mechanism as the page table
page allocator, so that we allocate from KSEG0 in 32 bit, and from XKPHYS
on 64 bit.
Reviewed by: alc, jmallett
Diffstat (limited to 'sys/mips/include')
-rw-r--r-- | sys/mips/include/pmap.h | 3 | ||||
-rw-r--r-- | sys/mips/include/vmparam.h | 2 |
2 files changed, 5 insertions, 0 deletions
diff --git a/sys/mips/include/pmap.h b/sys/mips/include/pmap.h index c082abb..cdbf9bc 100644 --- a/sys/mips/include/pmap.h +++ b/sys/mips/include/pmap.h @@ -163,6 +163,9 @@ void pmap_kenter_temporary_free(vm_paddr_t pa); int pmap_compute_pages_to_dump(void); void pmap_flush_pvcache(vm_page_t m); int pmap_emulate_modified(pmap_t pmap, vm_offset_t va); +void pmap_grow_direct_page_cache(void); +vm_page_t pmap_alloc_direct_page(unsigned int index, int req); + #endif /* _KERNEL */ #endif /* !LOCORE */ diff --git a/sys/mips/include/vmparam.h b/sys/mips/include/vmparam.h index b76e065..212a0c3 100644 --- a/sys/mips/include/vmparam.h +++ b/sys/mips/include/vmparam.h @@ -149,6 +149,8 @@ #define VM_INITIAL_PAGEIN 16 #endif +#define UMA_MD_SMALL_ALLOC + /* * max number of non-contig chunks of physical RAM you can have */ |