]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
drm/xe: use devm instead of drmm for managed bo
authorDaniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Fri, 9 Aug 2024 23:12:35 +0000 (16:12 -0700)
committerLucas De Marchi <lucas.demarchi@intel.com>
Thu, 15 Aug 2024 22:08:00 +0000 (15:08 -0700)
The BO cleanup touches the GGTT and therefore requires the HW to be
available, so we need to use devm instead of drmm.

Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/1160
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Lucas De Marchi <lucas.demarchi@intel.com>
Cc: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240809231237.1503796-2-daniele.ceraolospurio@intel.com
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
drivers/gpu/drm/xe/xe_bo.c

index 56a089aa3916dcf01af3be2a361ebaf2988fb7fc..800119c8fc8d8820bc8c8ebbd96eaf0454a2a338 100644 (file)
@@ -1584,7 +1584,7 @@ struct xe_bo *xe_bo_create_from_data(struct xe_device *xe, struct xe_tile *tile,
        return bo;
 }
 
-static void __xe_bo_unpin_map_no_vm(struct drm_device *drm, void *arg)
+static void __xe_bo_unpin_map_no_vm(void *arg)
 {
        xe_bo_unpin_map_no_vm(arg);
 }
@@ -1599,7 +1599,7 @@ struct xe_bo *xe_managed_bo_create_pin_map(struct xe_device *xe, struct xe_tile
        if (IS_ERR(bo))
                return bo;
 
-       ret = drmm_add_action_or_reset(&xe->drm, __xe_bo_unpin_map_no_vm, bo);
+       ret = devm_add_action_or_reset(xe->drm.dev, __xe_bo_unpin_map_no_vm, bo);
        if (ret)
                return ERR_PTR(ret);
 
@@ -1647,7 +1647,7 @@ int xe_managed_bo_reinit_in_vram(struct xe_device *xe, struct xe_tile *tile, str
        if (IS_ERR(bo))
                return PTR_ERR(bo);
 
-       drmm_release_action(&xe->drm, __xe_bo_unpin_map_no_vm, *src);
+       devm_release_action(xe->drm.dev, __xe_bo_unpin_map_no_vm, *src);
        *src = bo;
 
        return 0;