From 71d72ea14f174439bcc35550e67bca8b3c58bdaf Mon Sep 17 00:00:00 2001 From: Andrew Turner Date: Fri, 31 Jul 2015 13:32:25 +0000 Subject: [PATCH] Add VIRT_IN_DMAP to check if a virtual address is from the DMAP range. Obtained from: ABT Systems Ltd Sponsored by: The FreeBSD Foundation --- sys/arm64/include/vmparam.h | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/sys/arm64/include/vmparam.h b/sys/arm64/include/vmparam.h index 8ad602994e4..d1ed7f3509c 100644 --- a/sys/arm64/include/vmparam.h +++ b/sys/arm64/include/vmparam.h @@ -165,6 +165,9 @@ /* True if pa is in the dmap range */ #define PHYS_IN_DMAP(pa) ((pa) <= DMAP_MAX_PHYSADDR) +/* True if va is in the dmap range */ +#define VIRT_IN_DMAP(va) ((va) >= DMAP_MIN_ADDRESS && \ + (va) <= DMAP_MAX_ADDRESS) #define PHYS_TO_DMAP(pa) \ ({ \ @@ -176,7 +179,7 @@ #define DMAP_TO_PHYS(va) \ ({ \ - KASSERT(((va) <= DMAP_MAX_ADDRESS || (va) >= DMAP_MIN_ADDRESS), \ + KASSERT(VIRT_IN_DMAP(va), \ ("%s: VA out of range, VA: 0x%lx", __func__, \ (vm_offset_t)(va))); \ (va) & ~DMAP_MIN_ADDRESS; \