diff options
Diffstat (limited to 'vm/vm_user.c')
-rw-r--r-- | vm/vm_user.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/vm/vm_user.c b/vm/vm_user.c index df597267..18f79eda 100644 --- a/vm/vm_user.c +++ b/vm/vm_user.c @@ -607,11 +607,19 @@ kern_return_t vm_allocate_contiguous( selector = VM_PAGE_SEL_DMA; if (pmax > VM_PAGE_DMA_LIMIT) #ifdef VM_PAGE_DMA32_LIMIT +#if VM_PAGE_DMA32_LIMIT < VM_PAGE_DIRECTMAP_LIMIT selector = VM_PAGE_SEL_DMA32; if (pmax > VM_PAGE_DMA32_LIMIT) #endif +#endif selector = VM_PAGE_SEL_DIRECTMAP; if (pmax > VM_PAGE_DIRECTMAP_LIMIT) +#ifdef VM_PAGE_DMA32_LIMIT +#if VM_PAGE_DMA32_LIMIT > VM_PAGE_DIRECTMAP_LIMIT + selector = VM_PAGE_SEL_DMA32; + if (pmax > VM_PAGE_DMA32_LIMIT) +#endif +#endif selector = VM_PAGE_SEL_HIGHMEM; size = vm_page_round(size); |