summaryrefslogtreecommitdiffstats
path: root/sys/vm/vm_reserv.c
diff options
context:
space:
mode:
authormlaier <mlaier@FreeBSD.org>2010-11-19 04:30:33 +0000
committermlaier <mlaier@FreeBSD.org>2010-11-19 04:30:33 +0000
commit67f52f02f5c0452395886953398a3c38f5756244 (patch)
treefdbca8b5bba2d355ac7b240984b0eb4ff7ba2643 /sys/vm/vm_reserv.c
parent3c74492c3bd37cd44b46d6d14605c57fba3254fe (diff)
downloadFreeBSD-src-67f52f02f5c0452395886953398a3c38f5756244.zip
FreeBSD-src-67f52f02f5c0452395886953398a3c38f5756244.tar.gz
Off by one page in vm_reserv_reclaim_contig(): Also reclaim reservations
with only a single free page if that satisfies the requested size. MFC after: 3 days Reviewed by: alc
Diffstat (limited to 'sys/vm/vm_reserv.c')
-rw-r--r--sys/vm/vm_reserv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/vm/vm_reserv.c b/sys/vm/vm_reserv.c
index f5f44f7..d6cbc83 100644
--- a/sys/vm/vm_reserv.c
+++ b/sys/vm/vm_reserv.c
@@ -654,7 +654,8 @@ vm_reserv_reclaim_contig(vm_paddr_t size, vm_paddr_t low, vm_paddr_t high,
((pa ^ (pa + size - 1)) &
~(boundary - 1)) != 0)
pa_length = 0;
- } else if (pa_length >= size) {
+ }
+ if (pa_length >= size) {
vm_reserv_reclaim(rv);
return (TRUE);
}
OpenPOWER on IntegriCloud