diff options
author | alc <alc@FreeBSD.org> | 2008-04-06 18:09:28 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2008-04-06 18:09:28 +0000 |
commit | 2f4904816fb159c02b0f2efb5956fa5d7d029368 (patch) | |
tree | 166cd702c9314eb705ef67586ab9f10f438cdbe0 /sys/vm/vm_reserv.h | |
parent | 254de061dee1f05f371e55fe7d8afb56fcf9cc0d (diff) | |
download | FreeBSD-src-2f4904816fb159c02b0f2efb5956fa5d7d029368.zip FreeBSD-src-2f4904816fb159c02b0f2efb5956fa5d7d029368.tar.gz |
Introduce vm_reserv_reclaim_contig(). This function is used by
contigmalloc(9) as a last resort to steal pages from an inactive,
partially-used superpage reservation.
Rename vm_reserv_reclaim() to vm_reserv_reclaim_inactive() and
refactor it so that a separate subroutine is responsible for breaking
the selected reservation. This subroutine is also used by
vm_reserv_reclaim_contig().
Diffstat (limited to 'sys/vm/vm_reserv.h')
-rw-r--r-- | sys/vm/vm_reserv.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/vm/vm_reserv.h b/sys/vm/vm_reserv.h index 7cf814b..9eb1d06 100644 --- a/sys/vm/vm_reserv.h +++ b/sys/vm/vm_reserv.h @@ -1,6 +1,6 @@ /*- * Copyright (c) 2002-2006 Rice University - * Copyright (c) 2007 Alan L. Cox <alc@cs.rice.edu> + * Copyright (c) 2007-2008 Alan L. Cox <alc@cs.rice.edu> * All rights reserved. * * This software was developed for the FreeBSD Project by Alan L. Cox, @@ -48,7 +48,10 @@ boolean_t vm_reserv_free_page(vm_page_t m); void vm_reserv_init(void); int vm_reserv_level_iffullpop(vm_page_t m); boolean_t vm_reserv_reactivate_page(vm_page_t m); -boolean_t vm_reserv_reclaim(void); +boolean_t vm_reserv_reclaim_contig(vm_paddr_t size, vm_paddr_t low, + vm_paddr_t high, unsigned long alignment, + unsigned long boundary); +boolean_t vm_reserv_reclaim_inactive(void); void vm_reserv_rename(vm_page_t m, vm_object_t new_object, vm_object_t old_object, vm_pindex_t old_object_offset); vm_paddr_t vm_reserv_startup(vm_offset_t *vaddr, vm_paddr_t end, |