summaryrefslogtreecommitdiffstats
path: root/sys/ia64
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2013-02-16 21:46:27 +0000
committermarcel <marcel@FreeBSD.org>2013-02-16 21:46:27 +0000
commite81aa2332a28f1d3ba2fe04e9265cb19fb0f562f (patch)
tree31bac2472e002d6f660c1ae993ca267a4ddbe313 /sys/ia64
parent810f5b61cd6892e116965646c4996e0a30289f1b (diff)
downloadFreeBSD-src-e81aa2332a28f1d3ba2fe04e9265cb19fb0f562f.zip
FreeBSD-src-e81aa2332a28f1d3ba2fe04e9265cb19fb0f562f.tar.gz
Return EFAULT when the address is not a kernel virtual address.
Diffstat (limited to 'sys/ia64')
-rw-r--r--sys/ia64/ia64/mem.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/ia64/ia64/mem.c b/sys/ia64/ia64/mem.c
index 339985d..70dcf7b 100644
--- a/sys/ia64/ia64/mem.c
+++ b/sys/ia64/ia64/mem.c
@@ -128,6 +128,8 @@ kmemphys:
*/
addr = trunc_page(v);
eaddr = round_page(v + c);
+ if (addr < VM_MAXUSER_ADDRESS)
+ return (EFAULT);
for (; addr < eaddr; addr += PAGE_SIZE) {
if (pmap_kextract(addr) == 0)
return (EFAULT);
OpenPOWER on IntegriCloud