diff options
author | 2010-12-16 01:09:58 +0000 | |
---|---|---|
committer | 2010-12-16 01:09:58 +0000 | |
commit | 6899bfb0744be6961e385bd765025a18c69610ee (patch) | |
tree | 8df271b51b8dd88819f1123b3bfd5fbc2833b050 | |
parent | The VIA ciphers are added to an array of CRYPTO_ALGORITHM_MAX length (diff) | |
download | wireguard-openbsd-6899bfb0744be6961e385bd765025a18c69610ee.tar.xz wireguard-openbsd-6899bfb0744be6961e385bd765025a18c69610ee.zip |
no need to poke the vmspace, uvm_map_hint does what we want. ok oga
-rw-r--r-- | sys/dev/pci/drm/drm_bufs.c | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/sys/dev/pci/drm/drm_bufs.c b/sys/dev/pci/drm/drm_bufs.c index a4890cdd696..56f498f7e1c 100644 --- a/sys/dev/pci/drm/drm_bufs.c +++ b/sys/dev/pci/drm/drm_bufs.c @@ -922,7 +922,6 @@ drm_mapbufs(struct drm_device *dev, void *data, struct drm_file *file_priv) { struct drm_device_dma *dma = dev->dma; struct drm_buf_map *request = data; - struct vmspace *vms; struct vnode *vn; vaddr_t address, vaddr; voff_t foff; @@ -933,8 +932,6 @@ drm_mapbufs(struct drm_device *dev, void *data, struct drm_file *file_priv) if (!vfinddev(file_priv->kdev, VCHR, &vn)) return EINVAL; - vms = curproc->p_vmspace; - rw_enter_write(&dma->dma_lock); dev->dma->buf_use++; /* Can't allocate more after this call */ rw_exit_write(&dma->dma_lock); @@ -960,8 +957,8 @@ drm_mapbufs(struct drm_device *dev, void *data, struct drm_file *file_priv) foff = 0; } - vaddr = round_page((vaddr_t)vms->vm_daddr + BRKSIZ); - retcode = uvm_mmap(&vms->vm_map, &vaddr, size, + vaddr = uvm_map_hint(curproc, VM_PROT_READ | VM_PROT_WRITE); + retcode = uvm_mmap(&curproc->p_vmspace->vm_map, &vaddr, size, UVM_PROT_READ | UVM_PROT_WRITE, UVM_PROT_ALL, MAP_SHARED, (caddr_t)vn, foff, curproc->p_rlimit[RLIMIT_MEMLOCK].rlim_cur, curproc); |