Oded Gabbay
121b78e679
drm/amdkfd: unbind only existing processes
...
When unbinding a process from a device (initiated by amd_iommu_v2), the
driver needs to make sure that process still exists in the process table.
There is a possibility that amdkfd's own notifier handler -
kfd_process_notifier_release() - was called before the unbind function
and it already removed the process from the process table.
v2:
Because there can be only one process with the specified pasid, and
because *p can't be NULL inside the hash_for_each_rcu macro, it is more
reasonable to just put the whole code inside the if statement that
compares the pasid value. That way, when we exit hash_for_each_rcu, we
simply exit the function as well.
Signed-off-by: Oded Gabbay <oded.gabbay@gmail.com >
CC: Stable <stable@vger.kernel.org >
2016-06-03 08:50:40 +03:00
..
2016-06-03 08:50:40 +03:00
2016-04-29 14:22:32 +03:00
2016-06-02 17:45:55 +01:00
2016-05-21 07:03:31 +10:00
2016-05-17 08:47:30 +02:00
2016-06-01 15:59:36 +02:00
2016-05-17 08:47:30 +02:00
2016-05-12 11:32:14 +02:00
2016-05-17 08:47:30 +02:00
2016-05-23 11:48:48 -07:00
2016-05-21 07:03:31 +10:00
2016-05-21 07:03:31 +10:00
2016-05-21 07:03:31 +10:00
2016-05-11 19:05:36 +08:00
2016-03-14 09:46:02 +10:00
2016-05-27 14:08:56 -07:00
2016-05-30 09:14:00 +02:00
2016-06-01 16:09:56 +02:00
2015-10-06 12:57:47 +02:00
2016-06-01 15:25:04 +10:00
2016-05-23 11:48:48 -07:00
2016-05-21 06:12:13 +10:00
2016-06-03 14:39:41 +10:00
2016-05-12 11:32:14 +02:00
2016-05-17 09:11:23 +02:00
2015-10-06 12:57:47 +02:00
2016-05-27 16:03:48 +10:00
2016-05-17 08:56:55 +02:00
2016-05-21 07:03:31 +10:00
2016-05-02 17:04:50 +02:00
2015-10-16 11:27:46 +10:00
2016-06-01 14:59:44 +10:00
2016-04-28 10:30:05 +02:00
2016-05-23 11:48:48 -07:00
2016-05-27 15:26:11 -07:00
2016-05-09 13:49:56 +10:00
2016-05-17 08:47:30 +02:00
2016-05-23 11:48:48 -07:00
2016-05-17 08:47:30 +02:00
2016-04-04 10:41:08 -07:00
2016-05-17 08:47:30 +02:00
2016-05-20 17:40:07 +02:00
2016-04-27 08:41:34 +02:00
2016-05-17 08:57:05 +02:00
2016-06-01 14:59:47 +10:00
2016-03-29 08:34:05 +02:00
2016-04-27 10:14:17 +02:00
2016-03-31 13:35:09 +02:00
2016-05-10 08:54:09 +02:00
2016-04-22 10:26:37 +10:00
2016-06-01 15:00:05 +10:00
2016-04-28 11:48:09 +02:00
2016-05-23 11:10:46 +03:00
2016-04-22 18:52:24 +02:00
2016-05-09 13:49:56 +10:00
2016-04-27 10:16:17 +02:00
2016-03-17 15:09:34 -07:00
2016-05-23 11:35:31 +10:00
2016-02-10 15:14:49 +01:00
2016-06-01 15:00:28 +10:00
2016-05-17 15:44:41 +02:00
2016-04-27 10:16:17 +02:00
2016-06-01 15:00:28 +10:00
2016-05-17 08:47:30 +02:00
2016-01-22 17:02:18 -08:00
2016-04-27 10:16:17 +02:00
2016-04-27 10:15:56 +02:00
2015-09-30 10:44:48 +02:00
2016-04-27 08:42:48 +02:00
2016-05-21 07:03:31 +10:00
2016-02-12 14:22:40 +01:00
2016-04-27 08:42:48 +02:00
2015-11-06 17:50:42 -08:00
2015-09-30 10:44:48 +02:00
2016-03-02 17:02:54 +01:00
2016-06-01 14:59:39 +10:00
2015-12-15 10:22:26 +01:00
2016-02-10 14:19:21 +01:00
2016-05-06 16:04:48 +02:00
2016-04-27 08:41:34 +02:00
2015-12-11 09:13:10 +01:00
2015-09-30 10:06:06 +02:00
2016-05-17 08:47:30 +02:00
2016-04-20 13:35:14 +02:00
2015-11-24 11:47:46 +01:00
2016-04-26 13:23:24 +02:00
2016-04-27 10:15:56 +02:00
2015-10-19 11:00:44 +02:00
2016-05-06 17:47:35 +02:00
2016-05-27 16:08:38 +10:00