PTR_ERR should access the value just tested by IS_ERR, otherwise
the wrong error code will be returned.

Fixes: 7e9e5ead55be ("drm/vgem: fix cache synchronization on arm/arm64")
Signed-off-by: Wei Yongjun <weiyongj...@huawei.com>
---
 drivers/gpu/drm/vgem/vgem_drv.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/vgem/vgem_drv.c b/drivers/gpu/drm/vgem/vgem_drv.c
index b98689fb0d5d..ef52546f48c4 100644
--- a/drivers/gpu/drm/vgem/vgem_drv.c
+++ b/drivers/gpu/drm/vgem/vgem_drv.c
@@ -304,10 +304,10 @@ static struct page **pin_and_sync(struct 
drm_vgem_gem_object *bo)
        if (IS_ERR(sgt)) {
                dev_err(dev->dev,
                        "failed to allocate sgt: %ld\n",
-                       PTR_ERR(bo->table));
+                       PTR_ERR(sgt));
                drm_gem_put_pages(&bo->base, pages, false, false);
                mutex_unlock(&bo->pages_lock);
-               return ERR_CAST(bo->table);
+               return ERR_CAST(sgt);
        }
 
        /*



Reply via email to