aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu
diff options
context:
space:
mode:
authorChuanxiao Dong <chuanxiao.dong@intel.com>2017-03-01 14:34:52 +0800
committerZhenyu Wang <zhenyuw@linux.intel.com>2017-03-01 15:59:36 +0800
commitb6b6fbc8310e1b12b05717da9df6953b138f812b (patch)
tree1d9e899529710989c79f0ec3dfc2917b9f25d2cc /drivers/gpu
parentdrm/i915/gvt: set SFUSE_STRAP properly for vitual monitor detection (diff)
downloadlinux-dev-b6b6fbc8310e1b12b05717da9df6953b138f812b.tar.xz
linux-dev-b6b6fbc8310e1b12b05717da9df6953b138f812b.zip
drm/i915/gvt: use pfn_valid for better checking
Before get the page from pfn, use pfn_valid to check if pfn is able to translate to page structure. Signed-off-by: Chuanxiao Dong <chuanxiao.dong@intel.com> Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r--drivers/gpu/drm/i915/gvt/kvmgt.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c
index 182914c22ac5..241354890603 100644
--- a/drivers/gpu/drm/i915/gvt/kvmgt.c
+++ b/drivers/gpu/drm/i915/gvt/kvmgt.c
@@ -96,10 +96,10 @@ static int gvt_dma_map_iova(struct intel_vgpu *vgpu, kvm_pfn_t pfn,
struct device *dev = &vgpu->gvt->dev_priv->drm.pdev->dev;
dma_addr_t daddr;
- page = pfn_to_page(pfn);
- if (is_error_page(page))
+ if (unlikely(!pfn_valid(pfn)))
return -EFAULT;
+ page = pfn_to_page(pfn);
daddr = dma_map_page(dev, page, 0, PAGE_SIZE,
PCI_DMA_BIDIRECTIONAL);
if (dma_mapping_error(dev, daddr))