summaryrefslogtreecommitdiff
path: root/mali_kbase/context
diff options
context:
space:
mode:
authorAnkit Goyal <layog@google.com>2021-07-21 18:20:50 +0800
committerSidath Senanayake <sidaths@google.com>2021-07-21 14:58:03 +0000
commite4b180009060618dc22a207858a248fddcfbea9b (patch)
tree57cf298b3a121cf6583736f75102d466e62acba2 /mali_kbase/context
parent620019f26cee4f69c33fc0861a7975f50b7ce8b3 (diff)
downloadgpu-e4b180009060618dc22a207858a248fddcfbea9b.tar.gz
mali_kbase: platform: Add sysfs nodes for imported dmabufs
Bug: 191966412 Signed-off-by: Ankit Goyal <layog@google.com> Change-Id: Ib1400afdb622cd9fbe581703c782cece54fde7dd
Diffstat (limited to 'mali_kbase/context')
-rw-r--r--mali_kbase/context/mali_kbase_context.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/mali_kbase/context/mali_kbase_context.c b/mali_kbase/context/mali_kbase_context.c
index 3779b37..a54da20 100644
--- a/mali_kbase/context/mali_kbase_context.c
+++ b/mali_kbase/context/mali_kbase_context.c
@@ -142,10 +142,15 @@ static int kbase_insert_kctx_to_process(struct kbase_context *kctx)
kprcs->dma_buf_root = RB_ROOT;
kprcs->total_gpu_pages = 0;
kprcs->dma_buf_pages = 0;
+
+ /* Setup process's sysfs nodes */
WARN_ON(kobject_init_and_add(
&kprcs->kobj, &kprcs_ktype,
kctx->kbdev->proc_sysfs_node,
"%d", tgid));
+ kprcs->dma_bufs_sysfs_node = kobject_create_and_add("dma_bufs",
+ &kprcs->kobj);
+ WARN_ON(!(kprcs->dma_bufs_sysfs_node));
while (*new) {
struct kbase_process *prcs_node;
@@ -284,8 +289,13 @@ static void kbase_remove_kctx_from_process(struct kbase_context *kctx)
*/
WARN_ON(kprcs->total_gpu_pages);
WARN_ON(!RB_EMPTY_ROOT(&kprcs->dma_buf_root));
+
kobject_del(&kprcs->kobj);
kobject_put(&kprcs->kobj);
+
+ kobject_del(kprcs->dma_bufs_sysfs_node);
+ kobject_put(kprcs->dma_bufs_sysfs_node);
+
kfree(kprcs);
}
}