aboutsummaryrefslogtreecommitdiffstats
path: root/meta-v1000/recipes-kernel/linux/linux-yocto-4.14.71/1529-drm-amdgpu-Remove-kfd_process_device-usage-in-amdgpu.patch
blob: 1a8c03870eb77a27ac7aa6f3bf445581e0e803d5 (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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
From 34b2577ca02ffb02d342ce48dbfd2af66ce86cc4 Mon Sep 17 00:00:00 2001
From: Yong Zhao <yong.zhao@amd.com>
Date: Tue, 4 Oct 2016 13:32:56 -0400
Subject: [PATCH 1529/4131] drm/amdgpu: Remove kfd_process_device usage in
 amdgpu side

Change-Id: Ieb438f239eca9ecc5f015ca77b8a0f25c6213f61
Signed-off-by: Yong Zhao <yong.zhao@amd.com>

 Conflicts:
	drivers/gpu/drm/amd/amdgpu/amdgpu.h
---
 drivers/gpu/drm/amd/amdgpu/amdgpu.h              | 1 -
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h       | 2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 7 +++----
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h       | 1 -
 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c         | 4 ++--
 drivers/gpu/drm/amd/amdkfd/kfd_process.c         | 2 +-
 drivers/gpu/drm/amd/include/kgd_kfd_interface.h  | 3 +--
 7 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index ab784c9..11b759e 100755
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -182,7 +182,6 @@ struct amdgpu_cs_parser;
 struct amdgpu_job;
 struct amdgpu_irq_src;
 struct amdgpu_fpriv;
-struct kfd_process_device;
 struct kfd_vm_fault_info;
 
 enum amdgpu_cp_irq {
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
index 02b432e..9b4cea6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h
@@ -167,7 +167,7 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(
 		struct kgd_dev *kgd, uint64_t va, uint64_t size,
 		void *vm, struct kgd_mem **mem,
 		uint64_t *offset, void **kptr,
-		struct kfd_process_device *pdd, uint32_t flags);
+		uint32_t flags);
 int amdgpu_amdkfd_gpuvm_free_memory_of_gpu(
 		struct kgd_dev *kgd, struct kgd_mem *mem, void *vm);
 int amdgpu_amdkfd_gpuvm_map_memory_to_gpu(
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
index 3410779..a5afbad 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c
@@ -387,7 +387,7 @@ static void add_kgd_mem_to_kfd_bo_list(struct kgd_mem *mem,
 
 static int __alloc_memory_of_gpu(struct kgd_dev *kgd, uint64_t va,
 		uint64_t size, void *vm, struct kgd_mem **mem,
-		uint64_t *offset, void **kptr, struct kfd_process_device *pdd,
+		uint64_t *offset, void **kptr,
 		u32 domain, u64 flags, struct sg_table *sg, bool aql_queue,
 		bool readonly, bool execute, bool no_sub, bool userptr)
 {
@@ -453,7 +453,6 @@ static int __alloc_memory_of_gpu(struct kgd_dev *kgd, uint64_t va,
 		goto err_bo_create;
 	}
 	bo->kfd_bo = *mem;
-	bo->pdd = pdd;
 	(*mem)->data2.bo = bo;
 
 	if (domain == AMDGPU_GEM_DOMAIN_VRAM) {
@@ -879,7 +878,7 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(
 		struct kgd_dev *kgd, uint64_t va, uint64_t size,
 		void *vm, struct kgd_mem **mem,
 		uint64_t *offset, void **kptr,
-		struct kfd_process_device *pdd, uint32_t flags)
+		uint32_t flags)
 {
 	bool aql_queue, public, readonly, execute, no_sub, userptr;
 	u64 alloc_flag;
@@ -946,7 +945,7 @@ int amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu(
 			va);
 
 	return __alloc_memory_of_gpu(kgd, va, size, vm, mem,
-			temp_offset, kptr, pdd, domain,
+			temp_offset, kptr, domain,
 			alloc_flag, sg,
 			aql_queue, readonly, execute,
 			no_sub, userptr);
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
index e53b70a..1ea128f 100755
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
@@ -84,7 +84,6 @@ struct amdgpu_bo {
 	struct ttm_bo_kmap_obj		dma_buf_vmap;
 	struct amdgpu_mn		*mn;
 	struct kgd_mem			*kfd_bo;
-	struct kfd_process_device	*pdd;
 
 	union {
 		struct list_head	mn_list;
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
index 5e206e4..a828572 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c
@@ -1177,7 +1177,7 @@ static int kfd_ioctl_alloc_memory_of_gpu(struct file *filep,
 
 	err = dev->kfd2kgd->alloc_memory_of_gpu(
 		dev->kgd, args->va_addr, args->size,
-		pdd->vm, (struct kgd_mem **) &mem, NULL, NULL, pdd, 0);
+		pdd->vm, (struct kgd_mem **) &mem, NULL, NULL, 0);
 
 	if (err != 0)
 		return err;
@@ -1318,7 +1318,7 @@ static int kfd_ioctl_alloc_memory_of_gpu_new(struct file *filep,
 	err = dev->kfd2kgd->alloc_memory_of_gpu(
 		dev->kgd, args->va_addr, args->size,
 		pdd->vm, (struct kgd_mem **) &mem, &offset,
-		NULL, pdd, alloc_flags);
+		NULL, alloc_flags);
 
 	if (err != 0)
 		return err;
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_process.c b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
index 78a8cc9..717d4a7 100644
--- a/drivers/gpu/drm/amd/amdkfd/kfd_process.c
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_process.c
@@ -100,7 +100,7 @@ static int kfd_process_alloc_gpuvm(struct kfd_process *p,
 
 	err = kdev->kfd2kgd->alloc_memory_of_gpu(kdev->kgd, gpu_va, size,
 				pdd->vm,
-				(struct kgd_mem **)&mem, NULL, kptr, pdd,
+				(struct kgd_mem **)&mem, NULL, kptr,
 				ALLOC_MEM_FLAGS_GTT |
 				ALLOC_MEM_FLAGS_NONPAGED |
 				ALLOC_MEM_FLAGS_EXECUTE_ACCESS |
diff --git a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h
index 7af3073..10e9f60 100644
--- a/drivers/gpu/drm/amd/include/kgd_kfd_interface.h
+++ b/drivers/gpu/drm/amd/include/kgd_kfd_interface.h
@@ -316,8 +316,7 @@ struct kfd2kgd_calls {
 	int (*alloc_memory_of_gpu)(struct kgd_dev *kgd, uint64_t va,
 			uint64_t size, void *vm,
 			struct kgd_mem **mem, uint64_t *offset,
-			void **kptr, struct kfd_process_device *pdd,
-			uint32_t flags);
+			void **kptr, uint32_t flags);
 	int (*free_memory_of_gpu)(struct kgd_dev *kgd, struct kgd_mem *mem,
 			void *vm);
 	int (*map_memory_to_gpu)(struct kgd_dev *kgd, struct kgd_mem *mem,
-- 
2.7.4