Donet Tom
4e9597f22a
drm/amdgpu: Handle GPU page faults correctly on non-4K page systems
...
During a GPU page fault, the driver restores the SVM range and then maps it
into the GPU page tables. The current implementation passes a GPU-page-size
(4K-based) PFN to svm_range_restore_pages() to restore the range.
SVM ranges are tracked using system-page-size PFNs. On systems where the
system page size is larger than 4K, using GPU-page-size PFNs to restore the
range causes two problems:
Range lookup fails:
Because the restore function receives PFNs in GPU (4K) units, the SVM
range lookup does not find the existing range. This will result in a
duplicate SVM range being created.
VMA lookup failure:
The restore function also tries to locate the VMA for the faulting address.
It converts the GPU-page-size PFN into an address using the system page
size, which results in an incorrect address on non-4K page-size systems.
As a result, the VMA lookup fails with the message: "address 0xxxx VMA is
removed".
This patch passes the system-page-size PFN to svm_range_restore_pages() so
that the SVM range is restored correctly on non-4K page systems.
Acked-by: Christian König <christian.koenig@amd.com >
Signed-off-by: Donet Tom <donettom@linux.ibm.com >
Signed-off-by: Alex Deucher <alexander.deucher@amd.com >
(cherry picked from commit 074fe395fb )
2026-03-24 13:55:29 -04:00
..
2026-02-21 17:09:51 -08:00
2026-02-25 17:56:43 -05:00
2026-02-21 20:03:00 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:56 -05:00
2026-02-21 17:09:51 -08:00
2026-03-04 13:15:00 -05:00
2026-03-24 13:53:33 -04:00
2026-01-14 14:28:59 -05:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:58 -05:00
2026-01-05 16:59:58 -05:00
2026-01-05 16:59:55 -05:00
2025-10-28 09:55:16 -04:00
2026-03-17 12:10:16 -04:00
2025-10-13 14:14:36 -04:00
2026-02-21 20:03:00 -08:00
2026-02-21 20:03:00 -08:00
2025-12-08 13:56:33 -05:00
2025-10-28 11:02:36 -04:00
2026-02-21 20:03:00 -08:00
2026-01-05 16:59:55 -05:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2026-02-21 01:02:28 -08:00
2026-03-23 14:47:47 -04:00
2026-02-22 08:26:33 -08:00
2025-10-13 14:14:36 -04:00
2026-02-21 17:09:51 -08:00
2025-10-28 09:56:14 -04:00
2026-02-12 15:22:03 -05:00
2025-12-16 13:27:13 -05:00
2025-12-08 13:56:38 -05:00
2026-02-11 12:55:44 -08:00
2026-02-21 17:09:51 -08:00
2026-01-21 14:55:56 -05:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:55 -05:00
2026-02-21 17:09:51 -08:00
2025-11-11 21:54:17 -05:00
2026-02-21 17:09:51 -08:00
2026-01-29 12:26:55 -05:00
2026-01-05 16:59:54 -05:00
2026-02-22 08:26:33 -08:00
2026-02-19 12:16:12 -05:00
2026-02-21 17:09:51 -08:00
2025-11-04 11:33:54 -05:00
2025-11-04 11:33:54 -05:00
2026-02-21 17:09:51 -08:00
2025-10-13 14:14:36 -04:00
2026-02-21 17:09:51 -08:00
2026-02-21 01:02:28 -08:00
2026-03-23 14:48:06 -04:00
2026-03-23 14:48:06 -04:00
2026-01-05 16:59:55 -05:00
2025-12-16 13:27:10 -05:00
2025-12-16 13:27:10 -05:00
2026-02-22 08:26:33 -08:00
2025-12-16 13:27:42 -05:00
2026-01-05 17:29:51 -05:00
2026-01-05 17:29:51 -05:00
2026-02-21 17:09:51 -08:00
2026-01-20 17:25:53 -05:00
2025-10-13 14:14:15 -04:00
2026-03-11 14:04:08 -04:00
2026-02-21 17:09:51 -08:00
2026-01-27 18:02:06 -05:00
2026-01-27 18:02:06 -05:00
2026-03-06 17:11:15 -05:00
2026-01-10 14:21:35 -05:00
2026-01-10 14:21:35 -05:00
2026-02-22 08:26:33 -08:00
2026-02-21 17:09:51 -08:00
2026-02-25 17:56:50 -05:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:57 -05:00
2025-10-28 11:31:45 -04:00
2026-02-12 15:21:56 -05:00
2026-02-05 17:28:34 -05:00
2026-02-22 08:26:33 -08:00
2025-11-04 11:53:59 -05:00
2026-02-21 17:09:51 -08:00
2026-02-21 20:03:00 -08:00
2026-02-21 17:09:51 -08:00
2026-01-21 14:27:45 -05:00
2025-12-08 13:56:31 -05:00
2026-01-05 16:59:57 -05:00
2026-02-05 17:25:37 -05:00
2025-12-10 17:38:26 -05:00
2025-10-28 11:31:45 -04:00
2025-12-08 13:56:31 -05:00
2026-02-22 08:26:33 -08:00
2026-01-08 11:42:53 -05:00
2025-12-08 13:56:31 -05:00
2025-12-08 13:56:31 -05:00
2026-02-22 08:26:33 -08:00
2025-11-06 09:58:31 -05:00
2026-03-04 13:15:00 -05:00
2026-03-04 13:15:00 -05:00
2026-03-04 13:15:00 -05:00
2025-09-15 16:55:41 -04:00
2026-01-05 16:59:55 -05:00
2025-11-11 21:54:18 -05:00
2025-11-11 21:54:18 -05:00
2026-01-05 16:59:57 -05:00
2025-10-20 18:25:58 -04:00
2026-02-21 20:03:00 -08:00
2026-01-05 16:59:57 -05:00
2026-02-22 08:26:33 -08:00
2025-12-08 13:56:35 -05:00
2026-02-21 17:09:51 -08:00
2026-03-24 13:55:29 -04:00
2026-03-17 18:03:09 -04:00
2026-01-05 16:59:55 -05:00
2026-02-21 17:09:51 -08:00
2026-02-21 17:09:51 -08:00
2025-12-08 13:56:30 -05:00
2026-02-21 17:09:51 -08:00
2025-09-15 16:52:31 -04:00
2026-01-29 12:26:26 -05:00
2025-12-08 13:56:34 -05:00
2025-12-08 13:56:30 -05:00
2026-02-21 17:09:51 -08:00
2026-02-21 20:03:00 -08:00
2025-12-02 11:02:06 -05:00
2026-01-05 16:59:55 -05:00
2025-10-28 11:03:04 -04:00
2025-12-02 11:02:06 -05:00
2026-02-21 20:03:00 -08:00
2026-02-21 20:03:00 -08:00
2026-02-21 20:03:00 -08:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 17:00:00 -05:00
2026-01-05 16:59:55 -05:00
2026-01-29 12:38:54 -05:00
2026-01-29 12:39:21 -05:00
2026-01-29 12:39:21 -05:00
2025-12-08 14:12:01 -05:00
2026-01-29 12:26:55 -05:00
2025-12-10 17:37:59 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:26:47 -05:00
2025-12-08 13:56:35 -05:00
2026-01-05 16:59:55 -05:00
2026-02-21 20:03:00 -08:00
2026-02-21 20:03:00 -08:00
2026-03-17 12:19:23 -04:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:56 -05:00
2025-12-10 17:39:27 -05:00
2025-12-02 11:02:06 -05:00
2025-12-08 13:56:32 -05:00
2026-01-05 16:27:34 -05:00
2026-01-05 16:59:55 -05:00
2025-12-08 14:27:21 -05:00
2026-02-21 17:09:51 -08:00
2026-03-17 12:19:29 -04:00
2025-09-15 16:52:52 -04:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-21 14:17:48 -05:00
2026-01-05 16:59:55 -05:00
2026-01-21 14:18:09 -05:00
2026-01-05 16:59:57 -05:00
2026-01-05 16:59:57 -05:00
2025-11-14 11:28:29 -05:00
2026-01-08 11:41:34 -05:00
2026-02-21 17:09:51 -08:00
2026-02-25 17:58:06 -05:00
2026-03-06 17:11:46 -05:00
2026-01-05 16:59:56 -05:00
2025-12-08 13:56:39 -05:00
2026-03-17 12:18:34 -04:00
2026-03-17 12:18:46 -04:00
2026-03-17 12:18:52 -04:00
2026-03-17 12:18:58 -04:00
2026-03-17 12:19:04 -04:00
2026-01-05 16:27:50 -05:00
2026-03-17 12:19:11 -04:00
2026-03-17 12:19:17 -04:00
2025-12-08 13:56:34 -05:00
2026-01-05 16:59:55 -05:00
2025-12-08 13:56:33 -05:00
2026-01-05 16:27:42 -05:00
2025-10-28 09:47:45 -04:00
2026-01-05 16:27:42 -05:00
2025-12-08 13:56:42 -05:00
2025-12-08 13:56:31 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-02-12 15:23:39 -05:00
2026-02-03 16:46:25 -05:00
2025-12-08 13:56:31 -05:00
2026-03-04 13:15:00 -05:00
2026-01-05 16:59:57 -05:00
2025-11-04 11:33:54 -05:00
2026-02-05 17:19:40 -05:00
2026-02-05 17:19:57 -05:00
2026-02-05 17:20:04 -05:00
2026-01-05 16:59:55 -05:00
2025-12-08 13:56:38 -05:00
2026-01-27 18:02:06 -05:00
2025-12-10 17:38:02 -05:00
2026-01-05 16:59:55 -05:00
2025-12-02 11:02:06 -05:00
2026-01-05 16:59:55 -05:00
2025-11-11 21:54:18 -05:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:55 -05:00
2026-02-21 17:09:51 -08:00
2026-01-08 11:41:34 -05:00
2026-01-08 11:41:34 -05:00
2025-12-08 13:56:31 -05:00
2025-12-08 13:56:31 -05:00
2026-02-12 15:23:39 -05:00
2026-03-02 17:13:29 -05:00
2025-12-08 13:56:42 -05:00
2026-01-05 16:59:57 -05:00
2026-01-05 16:59:57 -05:00
2025-12-10 17:37:56 -05:00
2025-12-02 11:02:06 -05:00
2026-01-05 16:59:55 -05:00
2026-02-21 17:09:51 -08:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2025-11-11 21:54:18 -05:00
2025-11-11 21:54:18 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2026-01-05 16:59:55 -05:00
2025-12-08 13:56:30 -05:00
2026-01-05 16:59:56 -05:00
2026-02-03 16:48:12 -05:00
2025-12-08 13:56:30 -05:00
2026-01-27 18:12:10 -05:00
2025-12-10 18:05:49 -05:00
2025-12-08 13:56:30 -05:00
2026-02-25 17:57:06 -05:00
2026-01-21 14:18:09 -05:00
2025-12-08 13:56:42 -05:00