diff options
Diffstat (limited to 'common/recipes-kernel/linux/files/0431-drm-amdgpu-cleanup-ctx_mgr-init-fini.patch')
-rw-r--r-- | common/recipes-kernel/linux/files/0431-drm-amdgpu-cleanup-ctx_mgr-init-fini.patch | 122 |
1 files changed, 0 insertions, 122 deletions
diff --git a/common/recipes-kernel/linux/files/0431-drm-amdgpu-cleanup-ctx_mgr-init-fini.patch b/common/recipes-kernel/linux/files/0431-drm-amdgpu-cleanup-ctx_mgr-init-fini.patch deleted file mode 100644 index 237bbcbc..00000000 --- a/common/recipes-kernel/linux/files/0431-drm-amdgpu-cleanup-ctx_mgr-init-fini.patch +++ /dev/null @@ -1,122 +0,0 @@ -From efd4ccb59a4acb8b85835d6b053362dbacee40f9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com> -Date: Tue, 4 Aug 2015 16:20:31 +0200 -Subject: [PATCH 0431/1050] drm/amdgpu: cleanup ctx_mgr init/fini -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Christian König <christian.koenig@amd.com> -Reviewed-by: Chunming Zhou <david1.zhou@amd.com> ---- - drivers/gpu/drm/amd/amdgpu/amdgpu.h | 4 ++-- - drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c | 40 +++++++++++++++++++-------------- - drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 8 ++----- - 3 files changed, 27 insertions(+), 25 deletions(-) - -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h -index eadbe79..0cd776a 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h -@@ -1038,8 +1038,6 @@ int amdgpu_ctx_alloc(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv, - int amdgpu_ctx_free(struct amdgpu_device *adev, struct amdgpu_fpriv *fpriv, - uint32_t id); - --void amdgpu_ctx_fini(struct amdgpu_fpriv *fpriv); -- - struct amdgpu_ctx *amdgpu_ctx_get(struct amdgpu_fpriv *fpriv, uint32_t id); - int amdgpu_ctx_put(struct amdgpu_ctx *ctx); - -@@ -1051,6 +1049,8 @@ struct fence *amdgpu_ctx_get_fence(struct amdgpu_ctx *ctx, - int amdgpu_ctx_ioctl(struct drm_device *dev, void *data, - struct drm_file *filp); - -+void amdgpu_ctx_mgr_init(struct amdgpu_ctx_mgr *mgr); -+void amdgpu_ctx_mgr_fini(struct amdgpu_ctx_mgr *mgr); - - /* - * file private structure -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c -index 6766ead..3c353375b 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c -@@ -182,23 +182,6 @@ static int amdgpu_ctx_query(struct amdgpu_device *adev, - return 0; - } - --void amdgpu_ctx_fini(struct amdgpu_fpriv *fpriv) --{ -- struct idr *idp; -- struct amdgpu_ctx *ctx; -- uint32_t id; -- struct amdgpu_ctx_mgr *mgr = &fpriv->ctx_mgr; -- idp = &mgr->ctx_handles; -- -- idr_for_each_entry(idp,ctx,id) { -- if (kref_put(&ctx->refcount, amdgpu_ctx_do_release) != 1) -- DRM_ERROR("ctx %p is still alive\n", ctx); -- } -- -- idr_destroy(&mgr->ctx_handles); -- mutex_destroy(&mgr->lock); --} -- - int amdgpu_ctx_ioctl(struct drm_device *dev, void *data, - struct drm_file *filp) - { -@@ -330,3 +313,26 @@ struct fence *amdgpu_ctx_get_fence(struct amdgpu_ctx *ctx, - - return fence; - } -+ -+void amdgpu_ctx_mgr_init(struct amdgpu_ctx_mgr *mgr) -+{ -+ mutex_init(&mgr->lock); -+ idr_init(&mgr->ctx_handles); -+} -+ -+void amdgpu_ctx_mgr_fini(struct amdgpu_ctx_mgr *mgr) -+{ -+ struct amdgpu_ctx *ctx; -+ struct idr *idp; -+ uint32_t id; -+ -+ idp = &mgr->ctx_handles; -+ -+ idr_for_each_entry(idp, ctx, id) { -+ if (kref_put(&ctx->refcount, amdgpu_ctx_do_release) != 1) -+ DRM_ERROR("ctx %p is still alive\n", ctx); -+ } -+ -+ idr_destroy(&mgr->ctx_handles); -+ mutex_destroy(&mgr->lock); -+} -diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c -index 53da3d8..7226def 100644 ---- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c -+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c -@@ -527,10 +527,7 @@ int amdgpu_driver_open_kms(struct drm_device *dev, struct drm_file *file_priv) - mutex_init(&fpriv->bo_list_lock); - idr_init(&fpriv->bo_list_handles); - -- /* init context manager */ -- mutex_init(&fpriv->ctx_mgr.lock); -- idr_init(&fpriv->ctx_mgr.ctx_handles); -- fpriv->ctx_mgr.adev = adev; -+ amdgpu_ctx_mgr_init(&fpriv->ctx_mgr); - - file_priv->driver_priv = fpriv; - -@@ -571,8 +568,7 @@ void amdgpu_driver_postclose_kms(struct drm_device *dev, - idr_destroy(&fpriv->bo_list_handles); - mutex_destroy(&fpriv->bo_list_lock); - -- /* release context */ -- amdgpu_ctx_fini(fpriv); -+ amdgpu_ctx_mgr_fini(&fpriv->ctx_mgr); - - kfree(fpriv); - file_priv->driver_priv = NULL; --- -1.9.1 - |