diff --git a/sys/vm/vm_phys.c b/sys/vm/vm_phys.c index a880b7abd32..7ca3f5fbc0c 100644 --- a/sys/vm/vm_phys.c +++ b/sys/vm/vm_phys.c @@ -1451,7 +1451,8 @@ vm_phys_alloc_seg_contig(struct vm_phys_seg *seg, u_long npages, * (without overflow in pa_end calculation) * and fits within the segment. */ - if (pa_end < pa || pa_end > seg->end) + if (pa_end < pa || + pa < seg->start || seg->end < pa_end) continue; /*