summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2020-08-04 12:56:06 +1000
committerDave Airlie <airlied@redhat.com>2020-08-06 12:32:03 +1000
commit6eee6675e01da7f084da70a421e487d4c6092772 (patch)
tree68e5325b42fe5320f3a09cdf6f753e4fede90118 /drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c
parent06feb5df1af54195e4fd67af7d8c6ae789693e4a (diff)
drm/vmwgfx: fix gmrid takedown paths to new interface
Reviewed-by: Daniel Vetter <daniel.vetter@ffwll.ch> Signed-off-by: Dave Airlie <airlied@redhat.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200804025632.3868079-34-airlied@gmail.com
Diffstat (limited to 'drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c')
-rw-r--r--drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c b/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c
index 141fb14e3583..ec1b5bb01a93 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_gmrid_manager.c
@@ -133,20 +133,25 @@ int vmw_gmrid_man_init(struct vmw_private *dev_priv, int type)
return 0;
}
-static int vmw_gmrid_man_takedown(struct ttm_mem_type_manager *man)
+void vmw_gmrid_man_fini(struct vmw_private *dev_priv, int type)
{
+ struct ttm_mem_type_manager *man = &dev_priv->bdev.man[type];
struct vmwgfx_gmrid_man *gman =
(struct vmwgfx_gmrid_man *)man->priv;
+ ttm_mem_type_manager_disable(man);
+
+ ttm_mem_type_manager_force_list_clean(&dev_priv->bdev, man);
+
if (gman) {
ida_destroy(&gman->gmr_ida);
kfree(gman);
}
- return 0;
+
+ ttm_mem_type_manager_cleanup(man);
}
static const struct ttm_mem_type_manager_func vmw_gmrid_manager_func = {
- .takedown = vmw_gmrid_man_takedown,
.get_node = vmw_gmrid_man_get_node,
.put_node = vmw_gmrid_man_put_node,
};