diff options
author | jhb <jhb@FreeBSD.org> | 2013-09-09 18:11:59 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2013-09-09 18:11:59 +0000 |
commit | 04bb6e10cd2cbd0ee0de7fef3f81e88ebd43e6b4 (patch) | |
tree | 42d2ff2e91fcca16534848427856c6243db2126a /sys/kern/uipc_shm.c | |
parent | 2a48fed0b32ceb1567f3b7e33835bacfdf3e0971 (diff) | |
download | FreeBSD-src-04bb6e10cd2cbd0ee0de7fef3f81e88ebd43e6b4.zip FreeBSD-src-04bb6e10cd2cbd0ee0de7fef3f81e88ebd43e6b4.tar.gz |
Add a mmap flag (MAP_32BIT) on 64-bit platforms to request that a mapping use
an address in the first 2GB of the process's address space. This flag should
have the same semantics as the same flag on Linux.
To facilitate this, add a new parameter to vm_map_find() that specifies an
optional maximum virtual address. While here, fix several callers of
vm_map_find() to use a VMFS_* constant for the findspace argument instead of
TRUE and FALSE.
Reviewed by: alc
Approved by: re (kib)
Diffstat (limited to 'sys/kern/uipc_shm.c')
-rw-r--r-- | sys/kern/uipc_shm.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/kern/uipc_shm.c b/sys/kern/uipc_shm.c index 54366af..70829f3 100644 --- a/sys/kern/uipc_shm.c +++ b/sys/kern/uipc_shm.c @@ -954,7 +954,7 @@ shm_map(struct file *fp, size_t size, off_t offset, void **memp) ofs = offset & PAGE_MASK; offset = trunc_page(offset); size = round_page(size + ofs); - rv = vm_map_find(kernel_map, obj, offset, &kva, size, + rv = vm_map_find(kernel_map, obj, offset, &kva, size, 0, VMFS_OPTIMAL_SPACE, VM_PROT_READ | VM_PROT_WRITE, VM_PROT_READ | VM_PROT_WRITE, 0); if (rv == KERN_SUCCESS) { |