On 9/19/2022 5:29 PM, Gupta, Anshuman wrote:

-----Original Message-----
From: Das, Nirmoy <nirmoy....@intel.com>
Sent: Monday, September 19, 2022 8:33 PM
To: intel-gfx@lists.freedesktop.org
Cc: dri-de...@lists.freedesktop.org; Auld, Matthew
<matthew.a...@intel.com>; Gupta, Anshuman <anshuman.gu...@intel.com>
Subject: [PATCH] drm/i915: Do not dereference NULL bo->resource

bo->resource could be NULL hence add a NULL check for resource before
bo->dereferencing it.
Will bo->resource will be NULL only in case of object is smem or it can be NULL 
even in lmem case as well ?


It can happen with lmem too. I think we should just use i915_gem_object_is_lmem() instead of i915_ttm_cpu_maps_iomem here.


Nirmoy

Thanks,
Anshuman Gupta.
References: https://gitlab.freedesktop.org/drm/intel/-/issues/6850
Fixes: ad74457a6b5a96 ("drm/i915/dgfx: Release mmap on rpm suspend")
Signed-off-by: Nirmoy Das <nirmoy....@intel.com>
---
  drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
index 0544b0a4a43a..8608801cd9ab 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
@@ -513,7 +513,7 @@ static void i915_ttm_delete_mem_notify(struct
ttm_buffer_object *bo)

        if (likely(obj)) {
                /* ttm_bo_release() already has dma_resv_lock */
-               if (i915_ttm_cpu_maps_iomem(bo->resource))
+               if (bo->resource && i915_ttm_cpu_maps_iomem(bo-
resource))
                        wakeref = intel_runtime_pm_get(&to_i915(obj-
base.dev)->runtime_pm);
                __i915_gem_object_pages_fini(obj);
--
2.37.3

Reply via email to