aboutsummaryrefslogtreecommitdiffstats
path: root/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch')
-rw-r--r--meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch66
1 files changed, 66 insertions, 0 deletions
diff --git a/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch
new file mode 100644
index 00000000..24f50f9b
--- /dev/null
+++ b/meta-amd-bsp/recipes-kernel/linux/linux-yocto-4.14.71/2114-drm-amdkfd-remove-redundant-kfd_event_waiter.input_i.patch
@@ -0,0 +1,66 @@
+From 77d67189591cf5e28d378ac20950d7a02e6d0c22 Mon Sep 17 00:00:00 2001
+From: Felix Kuehling <Felix.Kuehling@amd.com>
+Date: Sat, 30 Sep 2017 17:26:13 -0400
+Subject: [PATCH 2114/4131] drm/amdkfd: remove redundant
+ kfd_event_waiter.input_index
+
+This always identical with the index of the event_waiter in the array.
+No need to store it in the waiter record.
+
+Change-Id: I9e2eb180c277351609a036cd83fb40de0709900e
+Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
+---
+ drivers/gpu/drm/amd/amdkfd/kfd_events.c | 9 +++------
+ 1 file changed, 3 insertions(+), 6 deletions(-)
+
+diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_events.c b/drivers/gpu/drm/amd/amdkfd/kfd_events.c
+index b7d3757..a4cf3f4 100644
+--- a/drivers/gpu/drm/amd/amdkfd/kfd_events.c
++++ b/drivers/gpu/drm/amd/amdkfd/kfd_events.c
+@@ -52,7 +52,6 @@ struct kfd_event_waiter {
+
+ /* Event */
+ struct kfd_event *event;
+- uint32_t input_index;
+ };
+
+ #define SLOTS_PER_PAGE KFD_SIGNAL_EVENT_LIMIT
+@@ -690,8 +689,7 @@ static struct kfd_event_waiter *alloc_event_waiters(uint32_t num_events)
+
+ static int init_event_waiter_get_status(struct kfd_process *p,
+ struct kfd_event_waiter *waiter,
+- uint32_t event_id,
+- uint32_t input_index)
++ uint32_t event_id)
+ {
+ struct kfd_event *ev = lookup_event_by_id(p, event_id);
+
+@@ -699,7 +697,6 @@ static int init_event_waiter_get_status(struct kfd_process *p,
+ return -EINVAL;
+
+ waiter->event = ev;
+- waiter->input_index = input_index;
+ waiter->activated = ev->signaled;
+ ev->signaled = ev->signaled && !ev->auto_reset;
+
+@@ -767,7 +764,7 @@ static int copy_signaled_event_data(uint32_t num_events,
+ waiter = &event_waiters[i];
+ event = waiter->event;
+ if (waiter->activated && event->type == KFD_EVENT_TYPE_MEMORY) {
+- dst = &data[waiter->input_index].memory_exception_data;
++ dst = &data[i].memory_exception_data;
+ src = &event->memory_exception_data;
+ if (copy_to_user(dst, src,
+ sizeof(struct kfd_hsa_memory_exception_data)))
+@@ -839,7 +836,7 @@ int kfd_wait_on_events(struct kfd_process *p,
+ }
+
+ ret = init_event_waiter_get_status(p, &event_waiters[i],
+- event_data.event_id, i);
++ event_data.event_id);
+ if (ret)
+ goto out_unlock;
+ }
+--
+2.7.4
+