aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/0789-drm-amdgpu-get-core-kref-in-sem_import-V2.patch
blob: 79262db9689aa4392c4e9173ae421f451acbb89c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
From 57f06ca4585907aa42a2dcc656d762218940ff85 Mon Sep 17 00:00:00 2001
From: Chunming Zhou <David1.Zhou@amd.com>
Date: Fri, 10 Feb 2017 17:07:05 +0800
Subject: [PATCH 0789/4131] drm/amdgpu: get core->kref in sem_import V2

V2: remove mutex protection for core->kref

Change-Id: I39c83946e7bf078b4a527ba26747cc4f400592e0
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com>
Reviewed-by: David Mao <David.Mao@amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_sem.c | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_sem.c
index 3c4ee76..a30b5cb 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sem.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sem.c
@@ -225,10 +225,11 @@ static int amdgpu_sem_import(struct amdgpu_fpriv *fpriv,
 		return -EINVAL;
 	}
 
+	kref_get(&core->kref);
 	sem = amdgpu_sem_alloc();
 	if (!sem) {
 		ret = -ENOMEM;
-		goto err_out;
+		goto err_sem;
 	}
 
 	sem->base = core;
@@ -246,9 +247,10 @@ static int amdgpu_sem_import(struct amdgpu_fpriv *fpriv,
 
 	*handle = ret;
 	return 0;
-
+err_sem:
+	kref_put(&core->kref, amdgpu_sem_core_free);
 err_out:
-	kfree(sem);
+	amdgpu_sem_put(sem);
 	return ret;
 
 }
-- 
2.7.4