--- openbsd-ref/sys/uvm/uvm_mmap.c	Sun Jul 22 11:46:52 2012
+++ openbsd-ref/sys/uvm/uvm_mmap.c.new	Thu Jul 25 14:44:36 2013
@@ -415,7 +415,7 @@
 			goto out;
 		}
 
-		if (vp->v_type == VREG && (pos + size) < pos) {
+		if (vp->v_type == VREG && (pos < 0 || size > SIZE_MAX - pos)) {
 			error = EINVAL;		/* no offset wrapping */
 			goto out;
 		}
