diff options
author | Michel Thierry <michel.thierry@intel.com> | 2015-03-24 20:06:33 +0300 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-03-27 11:25:09 +0300 |
commit | 1266cdb1c236eabd49cbf1e45f401159fb4c21d1 (patch) | |
tree | bd23c7a7e7949431677fed3d8aa30b579b4e5e2a /drivers/gpu/drm/i915 | |
parent | fdc454c1484a20e1345cf4e4d7a9feaee814147f (diff) | |
download | linux-1266cdb1c236eabd49cbf1e45f401159fb4c21d1.tar.xz |
drm/i915: Fix i915_dma_map_single positive error code
i915_dma_map_single relies on dma_mapping_error, which returns positive
error codes. Found by static checker.
Introduced by commit 678d96fbb3b5995a2fdff2bca5e1ab4a40b7e968
("drm/i915: Track GEN6 page table usage").
v2: Return negative error code and renamed commit title. (Dan)
v3: Missing reported-by tag (Daniel)
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Michel Thierry <michel.thierry@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'drivers/gpu/drm/i915')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_gtt.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c index 9903bb0097a6..9c155d1f852f 100644 --- a/drivers/gpu/drm/i915/i915_gem_gtt.c +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c @@ -311,7 +311,10 @@ static inline int i915_dma_map_page_single(struct page *page, struct device *device = &dev->pdev->dev; *daddr = dma_map_page(device, page, 0, 4096, PCI_DMA_BIDIRECTIONAL); - return dma_mapping_error(device, *daddr); + if (dma_mapping_error(device, *daddr)) + return -ENOMEM; + + return 0; } static void unmap_and_free_pt(struct i915_page_table_entry *pt, |