aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJan Kara <jack@suse.cz>2016-12-14 18:07:01 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2016-12-14 19:04:09 -0500
commit1a29d85eb0f19b7d8271923d8917d7b4f5540b3e (patch)
tree76bf90e637fb4b0c95a7a9eb81bc9aec71329a4e /drivers
parent82b0f8c39a3869b6fd2a10e180a862248736ec6f (diff)
mm: use vmf->address instead of of vmf->virtual_address
Every single user of vmf->virtual_address typed that entry to unsigned long before doing anything with it so the type of virtual_address does not really provide us any additional safety. Just use masked vmf->address which already has the appropriate type. Link: http://lkml.kernel.org/r/1479460644-25076-3-git-send-email-jack@suse.cz Signed-off-by: Jan Kara <jack@suse.cz> Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com> Cc: Dan Williams <dan.j.williams@intel.com> Cc: Ross Zwisler <ross.zwisler@linux.intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/char/agp/alpha-agp.c3
-rw-r--r--drivers/char/mspec.c2
-rw-r--r--drivers/dax/dax.c3
-rw-r--r--drivers/gpu/drm/armada/armada_gem.c5
-rw-r--r--drivers/gpu/drm/drm_vm.c10
-rw-r--r--drivers/gpu/drm/etnaviv/etnaviv_gem.c7
-rw-r--r--drivers/gpu/drm/exynos/exynos_drm_gem.c6
-rw-r--r--drivers/gpu/drm/gma500/framebuffer.c2
-rw-r--r--drivers/gpu/drm/gma500/gem.c5
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c3
-rw-r--r--drivers/gpu/drm/msm/msm_gem.c8
-rw-r--r--drivers/gpu/drm/omapdrm/omap_gem.c20
-rw-r--r--drivers/gpu/drm/tegra/gem.c4
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo_vm.c2
-rw-r--r--drivers/gpu/drm/udl/udl_gem.c5
-rw-r--r--drivers/gpu/drm/vgem/vgem_drv.c2
-rw-r--r--drivers/media/v4l2-core/videobuf-dma-sg.c5
-rw-r--r--drivers/misc/cxl/context.c5
-rw-r--r--drivers/misc/sgi-gru/grumain.c2
-rw-r--r--drivers/staging/android/ion/ion.c2
-rw-r--r--drivers/staging/lustre/lustre/llite/vvp_io.c6
-rw-r--r--drivers/xen/privcmd.c2
22 files changed, 46 insertions, 63 deletions
diff --git a/drivers/char/agp/alpha-agp.c b/drivers/char/agp/alpha-agp.c
index 199b8e99f7d7..737187865269 100644
--- a/drivers/char/agp/alpha-agp.c
+++ b/drivers/char/agp/alpha-agp.c
@@ -19,8 +19,7 @@ static int alpha_core_agp_vm_fault(struct vm_area_struct *vma,
19 unsigned long pa; 19 unsigned long pa;
20 struct page *page; 20 struct page *page;
21 21
22 dma_addr = (unsigned long)vmf->virtual_address - vma->vm_start 22 dma_addr = vmf->address - vma->vm_start + agp->aperture.bus_base;
23 + agp->aperture.bus_base;
24 pa = agp->ops->translate(agp, dma_addr); 23 pa = agp->ops->translate(agp, dma_addr);
25 24
26 if (pa == (unsigned long)-EINVAL) 25 if (pa == (unsigned long)-EINVAL)
diff --git a/drivers/char/mspec.c b/drivers/char/mspec.c
index f3f92d5fcda0..a697ca0cab1e 100644
--- a/drivers/char/mspec.c
+++ b/drivers/char/mspec.c
@@ -227,7 +227,7 @@ mspec_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
227 * be because another thread has installed the pte first, so it 227 * be because another thread has installed the pte first, so it
228 * is no problem. 228 * is no problem.
229 */ 229 */
230 vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, pfn); 230 vm_insert_pfn(vma, vmf->address, pfn);
231 231
232 return VM_FAULT_NOPAGE; 232 return VM_FAULT_NOPAGE;
233} 233}
diff --git a/drivers/dax/dax.c b/drivers/dax/dax.c
index 286447a83dab..26ec39ddf21f 100644
--- a/drivers/dax/dax.c
+++ b/drivers/dax/dax.c
@@ -328,7 +328,6 @@ static phys_addr_t pgoff_to_phys(struct dax_dev *dax_dev, pgoff_t pgoff,
328static int __dax_dev_fault(struct dax_dev *dax_dev, struct vm_area_struct *vma, 328static int __dax_dev_fault(struct dax_dev *dax_dev, struct vm_area_struct *vma,
329 struct vm_fault *vmf) 329 struct vm_fault *vmf)
330{ 330{
331 unsigned long vaddr = (unsigned long) vmf->virtual_address;
332 struct device *dev = &dax_dev->dev; 331 struct device *dev = &dax_dev->dev;
333 struct dax_region *dax_region; 332 struct dax_region *dax_region;
334 int rc = VM_FAULT_SIGBUS; 333 int rc = VM_FAULT_SIGBUS;
@@ -353,7 +352,7 @@ static int __dax_dev_fault(struct dax_dev *dax_dev, struct vm_area_struct *vma,
353 352
354 pfn = phys_to_pfn_t(phys, dax_region->pfn_flags); 353 pfn = phys_to_pfn_t(phys, dax_region->pfn_flags);
355 354
356 rc = vm_insert_mixed(vma, vaddr, pfn); 355 rc = vm_insert_mixed(vma, vmf->address, pfn);
357 356
358 if (rc == -ENOMEM) 357 if (rc == -ENOMEM)
359 return VM_FAULT_OOM; 358 return VM_FAULT_OOM;
diff --git a/drivers/gpu/drm/armada/armada_gem.c b/drivers/gpu/drm/armada/armada_gem.c
index 768087ddb046..a293c8be232c 100644
--- a/drivers/gpu/drm/armada/armada_gem.c
+++ b/drivers/gpu/drm/armada/armada_gem.c
@@ -17,12 +17,11 @@
17static int armada_gem_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf) 17static int armada_gem_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
18{ 18{
19 struct armada_gem_object *obj = drm_to_armada_gem(vma->vm_private_data); 19 struct armada_gem_object *obj = drm_to_armada_gem(vma->vm_private_data);
20 unsigned long addr = (unsigned long)vmf->virtual_address;
21 unsigned long pfn = obj->phys_addr >> PAGE_SHIFT; 20 unsigned long pfn = obj->phys_addr >> PAGE_SHIFT;
22 int ret; 21 int ret;
23 22
24 pfn += (addr - vma->vm_start) >> PAGE_SHIFT; 23 pfn += (vmf->address - vma->vm_start) >> PAGE_SHIFT;
25 ret = vm_insert_pfn(vma, addr, pfn); 24 ret = vm_insert_pfn(vma, vmf->address, pfn);
26 25
27 switch (ret) { 26 switch (ret) {
28 case 0: 27 case 0:
diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index caa4e4ca616d..bd311c77c254 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -124,8 +124,7 @@ static int drm_do_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
124 * Using vm_pgoff as a selector forces us to use this unusual 124 * Using vm_pgoff as a selector forces us to use this unusual
125 * addressing scheme. 125 * addressing scheme.
126 */ 126 */
127 resource_size_t offset = (unsigned long)vmf->virtual_address - 127 resource_size_t offset = vmf->address - vma->vm_start;
128 vma->vm_start;
129 resource_size_t baddr = map->offset + offset; 128 resource_size_t baddr = map->offset + offset;
130 struct drm_agp_mem *agpmem; 129 struct drm_agp_mem *agpmem;
131 struct page *page; 130 struct page *page;
@@ -195,7 +194,7 @@ static int drm_do_vm_shm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
195 if (!map) 194 if (!map)
196 return VM_FAULT_SIGBUS; /* Nothing allocated */ 195 return VM_FAULT_SIGBUS; /* Nothing allocated */
197 196
198 offset = (unsigned long)vmf->virtual_address - vma->vm_start; 197 offset = vmf->address - vma->vm_start;
199 i = (unsigned long)map->handle + offset; 198 i = (unsigned long)map->handle + offset;
200 page = vmalloc_to_page((void *)i); 199 page = vmalloc_to_page((void *)i);
201 if (!page) 200 if (!page)
@@ -301,7 +300,8 @@ static int drm_do_vm_dma_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
301 if (!dma->pagelist) 300 if (!dma->pagelist)
302 return VM_FAULT_SIGBUS; /* Nothing allocated */ 301 return VM_FAULT_SIGBUS; /* Nothing allocated */
303 302
304 offset = (unsigned long)vmf->virtual_address - vma->vm_start; /* vm_[pg]off[set] should be 0 */ 303 offset = vmf->address - vma->vm_start;
304 /* vm_[pg]off[set] should be 0 */
305 page_nr = offset >> PAGE_SHIFT; /* page_nr could just be vmf->pgoff */ 305 page_nr = offset >> PAGE_SHIFT; /* page_nr could just be vmf->pgoff */
306 page = virt_to_page((void *)dma->pagelist[page_nr]); 306 page = virt_to_page((void *)dma->pagelist[page_nr]);
307 307
@@ -337,7 +337,7 @@ static int drm_do_vm_sg_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
337 if (!entry->pagelist) 337 if (!entry->pagelist)
338 return VM_FAULT_SIGBUS; /* Nothing allocated */ 338 return VM_FAULT_SIGBUS; /* Nothing allocated */
339 339
340 offset = (unsigned long)vmf->virtual_address - vma->vm_start; 340 offset = vmf->address - vma->vm_start;
341 map_offset = map->offset - (unsigned long)dev->sg->virtual; 341 map_offset = map->offset - (unsigned long)dev->sg->virtual;
342 page_offset = (offset >> PAGE_SHIFT) + (map_offset >> PAGE_SHIFT); 342 page_offset = (offset >> PAGE_SHIFT) + (map_offset >> PAGE_SHIFT);
343 page = entry->pagelist[page_offset]; 343 page = entry->pagelist[page_offset];
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gem.c b/drivers/gpu/drm/etnaviv/etnaviv_gem.c
index 6f5dfabb3096..114dddbd297b 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_gem.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_gem.c
@@ -202,15 +202,14 @@ int etnaviv_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
202 } 202 }
203 203
204 /* We don't use vmf->pgoff since that has the fake offset: */ 204 /* We don't use vmf->pgoff since that has the fake offset: */
205 pgoff = ((unsigned long)vmf->virtual_address - 205 pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
206 vma->vm_start) >> PAGE_SHIFT;
207 206
208 page = pages[pgoff]; 207 page = pages[pgoff];
209 208
210 VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address, 209 VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
211 page_to_pfn(page), page_to_pfn(page) << PAGE_SHIFT); 210 page_to_pfn(page), page_to_pfn(page) << PAGE_SHIFT);
212 211
213 ret = vm_insert_page(vma, (unsigned long)vmf->virtual_address, page); 212 ret = vm_insert_page(vma, vmf->address, page);
214 213
215out: 214out:
216 switch (ret) { 215 switch (ret) {
diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c
index ea7a18230888..57b81460fec8 100644
--- a/drivers/gpu/drm/exynos/exynos_drm_gem.c
+++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c
@@ -455,8 +455,7 @@ int exynos_drm_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
455 pgoff_t page_offset; 455 pgoff_t page_offset;
456 int ret; 456 int ret;
457 457
458 page_offset = ((unsigned long)vmf->virtual_address - 458 page_offset = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
459 vma->vm_start) >> PAGE_SHIFT;
460 459
461 if (page_offset >= (exynos_gem->size >> PAGE_SHIFT)) { 460 if (page_offset >= (exynos_gem->size >> PAGE_SHIFT)) {
462 DRM_ERROR("invalid page offset\n"); 461 DRM_ERROR("invalid page offset\n");
@@ -465,8 +464,7 @@ int exynos_drm_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
465 } 464 }
466 465
467 pfn = page_to_pfn(exynos_gem->pages[page_offset]); 466 pfn = page_to_pfn(exynos_gem->pages[page_offset]);
468 ret = vm_insert_mixed(vma, (unsigned long)vmf->virtual_address, 467 ret = vm_insert_mixed(vma, vmf->address, __pfn_to_pfn_t(pfn, PFN_DEV));
469 __pfn_to_pfn_t(pfn, PFN_DEV));
470 468
471out: 469out:
472 switch (ret) { 470 switch (ret) {
diff --git a/drivers/gpu/drm/gma500/framebuffer.c b/drivers/gpu/drm/gma500/framebuffer.c
index 4071b2d1e8cf..8b44fa542562 100644
--- a/drivers/gpu/drm/gma500/framebuffer.c
+++ b/drivers/gpu/drm/gma500/framebuffer.c
@@ -125,7 +125,7 @@ static int psbfb_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
125 psbfb->gtt->offset; 125 psbfb->gtt->offset;
126 126
127 page_num = vma_pages(vma); 127 page_num = vma_pages(vma);
128 address = (unsigned long)vmf->virtual_address - (vmf->pgoff << PAGE_SHIFT); 128 address = vmf->address - (vmf->pgoff << PAGE_SHIFT);
129 129
130 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot); 130 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
131 131
diff --git a/drivers/gpu/drm/gma500/gem.c b/drivers/gpu/drm/gma500/gem.c
index 6d1cb6b370b1..527c62917660 100644
--- a/drivers/gpu/drm/gma500/gem.c
+++ b/drivers/gpu/drm/gma500/gem.c
@@ -197,15 +197,14 @@ int psb_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
197 197
198 /* Page relative to the VMA start - we must calculate this ourselves 198 /* Page relative to the VMA start - we must calculate this ourselves
199 because vmf->pgoff is the fake GEM offset */ 199 because vmf->pgoff is the fake GEM offset */
200 page_offset = ((unsigned long) vmf->virtual_address - vma->vm_start) 200 page_offset = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
201 >> PAGE_SHIFT;
202 201
203 /* CPU view of the page, don't go via the GART for CPU writes */ 202 /* CPU view of the page, don't go via the GART for CPU writes */
204 if (r->stolen) 203 if (r->stolen)
205 pfn = (dev_priv->stolen_base + r->offset) >> PAGE_SHIFT; 204 pfn = (dev_priv->stolen_base + r->offset) >> PAGE_SHIFT;
206 else 205 else
207 pfn = page_to_pfn(r->pages[page_offset]); 206 pfn = page_to_pfn(r->pages[page_offset]);
208 ret = vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, pfn); 207 ret = vm_insert_pfn(vma, vmf->address, pfn);
209 208
210fail: 209fail:
211 mutex_unlock(&dev_priv->mmap_mutex); 210 mutex_unlock(&dev_priv->mmap_mutex);
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index d0dcaf35b429..412f3513f269 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -1796,8 +1796,7 @@ int i915_gem_fault(struct vm_area_struct *area, struct vm_fault *vmf)
1796 int ret; 1796 int ret;
1797 1797
1798 /* We don't use vmf->pgoff since that has the fake offset */ 1798 /* We don't use vmf->pgoff since that has the fake offset */
1799 page_offset = ((unsigned long)vmf->virtual_address - area->vm_start) >> 1799 page_offset = (vmf->address - area->vm_start) >> PAGE_SHIFT;
1800 PAGE_SHIFT;
1801 1800
1802 trace_i915_gem_object_fault(obj, page_offset, true, write); 1801 trace_i915_gem_object_fault(obj, page_offset, true, write);
1803 1802
diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c
index cd06cfd94687..d8bc59c7e261 100644
--- a/drivers/gpu/drm/msm/msm_gem.c
+++ b/drivers/gpu/drm/msm/msm_gem.c
@@ -225,16 +225,14 @@ int msm_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
225 } 225 }
226 226
227 /* We don't use vmf->pgoff since that has the fake offset: */ 227 /* We don't use vmf->pgoff since that has the fake offset: */
228 pgoff = ((unsigned long)vmf->virtual_address - 228 pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
229 vma->vm_start) >> PAGE_SHIFT;
230 229
231 pfn = page_to_pfn(pages[pgoff]); 230 pfn = page_to_pfn(pages[pgoff]);
232 231
233 VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address, 232 VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
234 pfn, pfn << PAGE_SHIFT); 233 pfn, pfn << PAGE_SHIFT);
235 234
236 ret = vm_insert_mixed(vma, (unsigned long)vmf->virtual_address, 235 ret = vm_insert_mixed(vma, vmf->address, __pfn_to_pfn_t(pfn, PFN_DEV));
237 __pfn_to_pfn_t(pfn, PFN_DEV));
238 236
239out_unlock: 237out_unlock:
240 mutex_unlock(&dev->struct_mutex); 238 mutex_unlock(&dev->struct_mutex);
diff --git a/drivers/gpu/drm/omapdrm/omap_gem.c b/drivers/gpu/drm/omapdrm/omap_gem.c
index d4e1e11466f8..4a90c690f09e 100644
--- a/drivers/gpu/drm/omapdrm/omap_gem.c
+++ b/drivers/gpu/drm/omapdrm/omap_gem.c
@@ -398,8 +398,7 @@ static int fault_1d(struct drm_gem_object *obj,
398 pgoff_t pgoff; 398 pgoff_t pgoff;
399 399
400 /* We don't use vmf->pgoff since that has the fake offset: */ 400 /* We don't use vmf->pgoff since that has the fake offset: */
401 pgoff = ((unsigned long)vmf->virtual_address - 401 pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
402 vma->vm_start) >> PAGE_SHIFT;
403 402
404 if (omap_obj->pages) { 403 if (omap_obj->pages) {
405 omap_gem_cpu_sync(obj, pgoff); 404 omap_gem_cpu_sync(obj, pgoff);
@@ -409,11 +408,10 @@ static int fault_1d(struct drm_gem_object *obj,
409 pfn = (omap_obj->paddr >> PAGE_SHIFT) + pgoff; 408 pfn = (omap_obj->paddr >> PAGE_SHIFT) + pgoff;
410 } 409 }
411 410
412 VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address, 411 VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
413 pfn, pfn << PAGE_SHIFT); 412 pfn, pfn << PAGE_SHIFT);
414 413
415 return vm_insert_mixed(vma, (unsigned long)vmf->virtual_address, 414 return vm_insert_mixed(vma, vmf->address, __pfn_to_pfn_t(pfn, PFN_DEV));
416 __pfn_to_pfn_t(pfn, PFN_DEV));
417} 415}
418 416
419/* Special handling for the case of faulting in 2d tiled buffers */ 417/* Special handling for the case of faulting in 2d tiled buffers */
@@ -427,7 +425,7 @@ static int fault_2d(struct drm_gem_object *obj,
427 struct page *pages[64]; /* XXX is this too much to have on stack? */ 425 struct page *pages[64]; /* XXX is this too much to have on stack? */
428 unsigned long pfn; 426 unsigned long pfn;
429 pgoff_t pgoff, base_pgoff; 427 pgoff_t pgoff, base_pgoff;
430 void __user *vaddr; 428 unsigned long vaddr;
431 int i, ret, slots; 429 int i, ret, slots;
432 430
433 /* 431 /*
@@ -447,8 +445,7 @@ static int fault_2d(struct drm_gem_object *obj,
447 const int m = 1 + ((omap_obj->width << fmt) / PAGE_SIZE); 445 const int m = 1 + ((omap_obj->width << fmt) / PAGE_SIZE);
448 446
449 /* We don't use vmf->pgoff since that has the fake offset: */ 447 /* We don't use vmf->pgoff since that has the fake offset: */
450 pgoff = ((unsigned long)vmf->virtual_address - 448 pgoff = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
451 vma->vm_start) >> PAGE_SHIFT;
452 449
453 /* 450 /*
454 * Actual address we start mapping at is rounded down to previous slot 451 * Actual address we start mapping at is rounded down to previous slot
@@ -459,7 +456,7 @@ static int fault_2d(struct drm_gem_object *obj,
459 /* figure out buffer width in slots */ 456 /* figure out buffer width in slots */
460 slots = omap_obj->width >> priv->usergart[fmt].slot_shift; 457 slots = omap_obj->width >> priv->usergart[fmt].slot_shift;
461 458
462 vaddr = vmf->virtual_address - ((pgoff - base_pgoff) << PAGE_SHIFT); 459 vaddr = vmf->address - ((pgoff - base_pgoff) << PAGE_SHIFT);
463 460
464 entry = &priv->usergart[fmt].entry[priv->usergart[fmt].last]; 461 entry = &priv->usergart[fmt].entry[priv->usergart[fmt].last];
465 462
@@ -503,12 +500,11 @@ static int fault_2d(struct drm_gem_object *obj,
503 500
504 pfn = entry->paddr >> PAGE_SHIFT; 501 pfn = entry->paddr >> PAGE_SHIFT;
505 502
506 VERB("Inserting %p pfn %lx, pa %lx", vmf->virtual_address, 503 VERB("Inserting %p pfn %lx, pa %lx", (void *)vmf->address,
507 pfn, pfn << PAGE_SHIFT); 504 pfn, pfn << PAGE_SHIFT);
508 505
509 for (i = n; i > 0; i--) { 506 for (i = n; i > 0; i--) {
510 vm_insert_mixed(vma, (unsigned long)vaddr, 507 vm_insert_mixed(vma, vaddr, __pfn_to_pfn_t(pfn, PFN_DEV));
511 __pfn_to_pfn_t(pfn, PFN_DEV));
512 pfn += priv->usergart[fmt].stride_pfn; 508 pfn += priv->usergart[fmt].stride_pfn;
513 vaddr += PAGE_SIZE * m; 509 vaddr += PAGE_SIZE * m;
514 } 510 }
diff --git a/drivers/gpu/drm/tegra/gem.c b/drivers/gpu/drm/tegra/gem.c
index c08e5279eeac..7d853e6b5ff0 100644
--- a/drivers/gpu/drm/tegra/gem.c
+++ b/drivers/gpu/drm/tegra/gem.c
@@ -452,10 +452,10 @@ static int tegra_bo_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
452 if (!bo->pages) 452 if (!bo->pages)
453 return VM_FAULT_SIGBUS; 453 return VM_FAULT_SIGBUS;
454 454
455 offset = ((unsigned long)vmf->virtual_address - vma->vm_start) >> PAGE_SHIFT; 455 offset = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
456 page = bo->pages[offset]; 456 page = bo->pages[offset];
457 457
458 err = vm_insert_page(vma, (unsigned long)vmf->virtual_address, page); 458 err = vm_insert_page(vma, vmf->address, page);
459 switch (err) { 459 switch (err) {
460 case -EAGAIN: 460 case -EAGAIN:
461 case 0: 461 case 0:
diff --git a/drivers/gpu/drm/ttm/ttm_bo_vm.c b/drivers/gpu/drm/ttm/ttm_bo_vm.c
index 4748aedc933a..68ef993ab431 100644
--- a/drivers/gpu/drm/ttm/ttm_bo_vm.c
+++ b/drivers/gpu/drm/ttm/ttm_bo_vm.c
@@ -101,7 +101,7 @@ static int ttm_bo_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
101 struct page *page; 101 struct page *page;
102 int ret; 102 int ret;
103 int i; 103 int i;
104 unsigned long address = (unsigned long)vmf->virtual_address; 104 unsigned long address = vmf->address;
105 int retval = VM_FAULT_NOPAGE; 105 int retval = VM_FAULT_NOPAGE;
106 struct ttm_mem_type_manager *man = 106 struct ttm_mem_type_manager *man =
107 &bdev->man[bo->mem.mem_type]; 107 &bdev->man[bo->mem.mem_type];
diff --git a/drivers/gpu/drm/udl/udl_gem.c b/drivers/gpu/drm/udl/udl_gem.c
index 818e70712b18..3c0c4bd3f750 100644
--- a/drivers/gpu/drm/udl/udl_gem.c
+++ b/drivers/gpu/drm/udl/udl_gem.c
@@ -107,14 +107,13 @@ int udl_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
107 unsigned int page_offset; 107 unsigned int page_offset;
108 int ret = 0; 108 int ret = 0;
109 109
110 page_offset = ((unsigned long)vmf->virtual_address - vma->vm_start) >> 110 page_offset = (vmf->address - vma->vm_start) >> PAGE_SHIFT;
111 PAGE_SHIFT;
112 111
113 if (!obj->pages) 112 if (!obj->pages)
114 return VM_FAULT_SIGBUS; 113 return VM_FAULT_SIGBUS;
115 114
116 page = obj->pages[page_offset]; 115 page = obj->pages[page_offset];
117 ret = vm_insert_page(vma, (unsigned long)vmf->virtual_address, page); 116 ret = vm_insert_page(vma, vmf->address, page);
118 switch (ret) { 117 switch (ret) {
119 case -EAGAIN: 118 case -EAGAIN:
120 case 0: 119 case 0:
diff --git a/drivers/gpu/drm/vgem/vgem_drv.c b/drivers/gpu/drm/vgem/vgem_drv.c
index f36c14729b55..477e07f0ecb6 100644
--- a/drivers/gpu/drm/vgem/vgem_drv.c
+++ b/drivers/gpu/drm/vgem/vgem_drv.c
@@ -54,7 +54,7 @@ static int vgem_gem_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
54{ 54{
55 struct drm_vgem_gem_object *obj = vma->vm_private_data; 55 struct drm_vgem_gem_object *obj = vma->vm_private_data;
56 /* We don't use vmf->pgoff since that has the fake offset */ 56 /* We don't use vmf->pgoff since that has the fake offset */
57 unsigned long vaddr = (unsigned long)vmf->virtual_address; 57 unsigned long vaddr = vmf->address;
58 struct page *page; 58 struct page *page;
59 59
60 page = shmem_read_mapping_page(file_inode(obj->base.filp)->i_mapping, 60 page = shmem_read_mapping_page(file_inode(obj->base.filp)->i_mapping,
diff --git a/drivers/media/v4l2-core/videobuf-dma-sg.c b/drivers/media/v4l2-core/videobuf-dma-sg.c
index 1db0af6c7f94..ba63ca57ed7e 100644
--- a/drivers/media/v4l2-core/videobuf-dma-sg.c
+++ b/drivers/media/v4l2-core/videobuf-dma-sg.c
@@ -439,13 +439,12 @@ static int videobuf_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
439 struct page *page; 439 struct page *page;
440 440
441 dprintk(3, "fault: fault @ %08lx [vma %08lx-%08lx]\n", 441 dprintk(3, "fault: fault @ %08lx [vma %08lx-%08lx]\n",
442 (unsigned long)vmf->virtual_address, 442 vmf->address, vma->vm_start, vma->vm_end);
443 vma->vm_start, vma->vm_end);
444 443
445 page = alloc_page(GFP_USER | __GFP_DMA32); 444 page = alloc_page(GFP_USER | __GFP_DMA32);
446 if (!page) 445 if (!page)
447 return VM_FAULT_OOM; 446 return VM_FAULT_OOM;
448 clear_user_highpage(page, (unsigned long)vmf->virtual_address); 447 clear_user_highpage(page, vmf->address);
449 vmf->page = page; 448 vmf->page = page;
450 449
451 return 0; 450 return 0;
diff --git a/drivers/misc/cxl/context.c b/drivers/misc/cxl/context.c
index 5e506c19108a..5d36dcc7f47e 100644
--- a/drivers/misc/cxl/context.c
+++ b/drivers/misc/cxl/context.c
@@ -117,13 +117,12 @@ int cxl_context_init(struct cxl_context *ctx, struct cxl_afu *afu, bool master,
117static int cxl_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf) 117static int cxl_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
118{ 118{
119 struct cxl_context *ctx = vma->vm_file->private_data; 119 struct cxl_context *ctx = vma->vm_file->private_data;
120 unsigned long address = (unsigned long)vmf->virtual_address;
121 u64 area, offset; 120 u64 area, offset;
122 121
123 offset = vmf->pgoff << PAGE_SHIFT; 122 offset = vmf->pgoff << PAGE_SHIFT;
124 123
125 pr_devel("%s: pe: %i address: 0x%lx offset: 0x%llx\n", 124 pr_devel("%s: pe: %i address: 0x%lx offset: 0x%llx\n",
126 __func__, ctx->pe, address, offset); 125 __func__, ctx->pe, vmf->address, offset);
127 126
128 if (ctx->afu->current_mode == CXL_MODE_DEDICATED) { 127 if (ctx->afu->current_mode == CXL_MODE_DEDICATED) {
129 area = ctx->afu->psn_phys; 128 area = ctx->afu->psn_phys;
@@ -155,7 +154,7 @@ static int cxl_mmap_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
155 return VM_FAULT_SIGBUS; 154 return VM_FAULT_SIGBUS;
156 } 155 }
157 156
158 vm_insert_pfn(vma, address, (area + offset) >> PAGE_SHIFT); 157 vm_insert_pfn(vma, vmf->address, (area + offset) >> PAGE_SHIFT);
159 158
160 mutex_unlock(&ctx->status_mutex); 159 mutex_unlock(&ctx->status_mutex);
161 160
diff --git a/drivers/misc/sgi-gru/grumain.c b/drivers/misc/sgi-gru/grumain.c
index 33741ad4a74a..af2e077da4b8 100644
--- a/drivers/misc/sgi-gru/grumain.c
+++ b/drivers/misc/sgi-gru/grumain.c
@@ -932,7 +932,7 @@ int gru_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
932 unsigned long paddr, vaddr; 932 unsigned long paddr, vaddr;
933 unsigned long expires; 933 unsigned long expires;
934 934
935 vaddr = (unsigned long)vmf->virtual_address; 935 vaddr = vmf->address;
936 gru_dbg(grudev, "vma %p, vaddr 0x%lx (0x%lx)\n", 936 gru_dbg(grudev, "vma %p, vaddr 0x%lx (0x%lx)\n",
937 vma, vaddr, GSEG_BASE(vaddr)); 937 vma, vaddr, GSEG_BASE(vaddr));
938 STAT(nopfn); 938 STAT(nopfn);
diff --git a/drivers/staging/android/ion/ion.c b/drivers/staging/android/ion/ion.c
index d5cc3070e83f..b653451843c8 100644
--- a/drivers/staging/android/ion/ion.c
+++ b/drivers/staging/android/ion/ion.c
@@ -882,7 +882,7 @@ static int ion_vm_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
882 BUG_ON(!buffer->pages || !buffer->pages[vmf->pgoff]); 882 BUG_ON(!buffer->pages || !buffer->pages[vmf->pgoff]);
883 883
884 pfn = page_to_pfn(ion_buffer_page(buffer->pages[vmf->pgoff])); 884 pfn = page_to_pfn(ion_buffer_page(buffer->pages[vmf->pgoff]));
885 ret = vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, pfn); 885 ret = vm_insert_pfn(vma, vmf->address, pfn);
886 mutex_unlock(&buffer->lock); 886 mutex_unlock(&buffer->lock);
887 if (ret) 887 if (ret)
888 return VM_FAULT_ERROR; 888 return VM_FAULT_ERROR;
diff --git a/drivers/staging/lustre/lustre/llite/vvp_io.c b/drivers/staging/lustre/lustre/llite/vvp_io.c
index 0b6d388d8aa4..697cbfbe9374 100644
--- a/drivers/staging/lustre/lustre/llite/vvp_io.c
+++ b/drivers/staging/lustre/lustre/llite/vvp_io.c
@@ -1014,7 +1014,7 @@ static int vvp_io_kernel_fault(struct vvp_fault_io *cfio)
1014 "page %p map %p index %lu flags %lx count %u priv %0lx: got addr %p type NOPAGE\n", 1014 "page %p map %p index %lu flags %lx count %u priv %0lx: got addr %p type NOPAGE\n",
1015 vmf->page, vmf->page->mapping, vmf->page->index, 1015 vmf->page, vmf->page->mapping, vmf->page->index,
1016 (long)vmf->page->flags, page_count(vmf->page), 1016 (long)vmf->page->flags, page_count(vmf->page),
1017 page_private(vmf->page), vmf->virtual_address); 1017 page_private(vmf->page), (void *)vmf->address);
1018 if (unlikely(!(cfio->ft_flags & VM_FAULT_LOCKED))) { 1018 if (unlikely(!(cfio->ft_flags & VM_FAULT_LOCKED))) {
1019 lock_page(vmf->page); 1019 lock_page(vmf->page);
1020 cfio->ft_flags |= VM_FAULT_LOCKED; 1020 cfio->ft_flags |= VM_FAULT_LOCKED;
@@ -1025,12 +1025,12 @@ static int vvp_io_kernel_fault(struct vvp_fault_io *cfio)
1025 } 1025 }
1026 1026
1027 if (cfio->ft_flags & (VM_FAULT_SIGBUS | VM_FAULT_SIGSEGV)) { 1027 if (cfio->ft_flags & (VM_FAULT_SIGBUS | VM_FAULT_SIGSEGV)) {
1028 CDEBUG(D_PAGE, "got addr %p - SIGBUS\n", vmf->virtual_address); 1028 CDEBUG(D_PAGE, "got addr %p - SIGBUS\n", (void *)vmf->address);
1029 return -EFAULT; 1029 return -EFAULT;
1030 } 1030 }
1031 1031
1032 if (cfio->ft_flags & VM_FAULT_OOM) { 1032 if (cfio->ft_flags & VM_FAULT_OOM) {
1033 CDEBUG(D_PAGE, "got addr %p - OOM\n", vmf->virtual_address); 1033 CDEBUG(D_PAGE, "got addr %p - OOM\n", (void *)vmf->address);
1034 return -ENOMEM; 1034 return -ENOMEM;
1035 } 1035 }
1036 1036
diff --git a/drivers/xen/privcmd.c b/drivers/xen/privcmd.c
index 702040fe2001..6e3306f4a525 100644
--- a/drivers/xen/privcmd.c
+++ b/drivers/xen/privcmd.c
@@ -602,7 +602,7 @@ static int privcmd_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
602{ 602{
603 printk(KERN_DEBUG "privcmd_fault: vma=%p %lx-%lx, pgoff=%lx, uv=%p\n", 603 printk(KERN_DEBUG "privcmd_fault: vma=%p %lx-%lx, pgoff=%lx, uv=%p\n",
604 vma, vma->vm_start, vma->vm_end, 604 vma, vma->vm_start, vma->vm_end,
605 vmf->pgoff, vmf->virtual_address); 605 vmf->pgoff, (void *)vmf->address);
606 606
607 return VM_FAULT_SIGBUS; 607 return VM_FAULT_SIGBUS;
608} 608}