Philip Yang
436afdfa35
drm/amdgpu: Move reset domain init before calling RREG32
amdgpu_detect_virtualization reads register, amdgpu_device_rreg access
adev->reset_domain->sem if kernel defined CONFIG_LOCKDEP, below is the
random boot hang backtrace on Vega10. It may get random NULL pointer
access backtrace if amdgpu_sriov_runtime is true too.
Move amdgpu_reset_create_reset_domain before calling to RREG32.
BUG: kernel NULL pointer dereference, address:
#PF: supervisor read access in kernel mode
#PF: error_code(0x0000) - not-present page
PGD 0 P4D 0
Oops: 0000 [#1] PREEMPT SMP NOPTI
Workqueue: events work_for_cpu_fn
RIP: 0010:down_read_trylock+0x13/0xf0
Call Trace:
<TASK>
amdgpu_device_skip_hw_access+0x38/0x80 [amdgpu]
amdgpu_device_rreg+0x1b/0x170 [amdgpu]
amdgpu_detect_virtualization+0x73/0x100 [amdgpu]
amdgpu_device_init.cold.60+0xbe/0x16b1 [amdgpu]
? pci_bus_read_config_word+0x43/0x70
amdgpu_driver_load_kms+0x15/0x120 [amdgpu]
amdgpu_pci_probe+0x1a1/0x3a0 [amdgpu]
Fixes: d0fb18b535 ("drm/amdgpu: Move reset sem into reset_domain")
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Andrey Grodzovsky <andrey.grodzovsky@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
2022-03-15 14:40:49 -04:00
..
2022-03-15 14:40:49 -04:00
2022-01-25 10:01:44 +01:00
2022-01-27 19:15:48 +01:00
2022-03-03 09:08:35 +10:30
2022-02-25 05:50:18 +10:00
2022-01-27 19:15:46 +01:00
2022-03-04 13:41:57 +10:00
2022-03-04 13:41:57 +10:00
2022-02-25 05:50:18 +10:00
2022-03-04 17:13:52 +09:00
2022-01-27 19:15:46 +01:00
2022-01-27 19:15:48 +01:00
2022-02-07 16:35:35 -08:00
2022-01-27 19:15:46 +01:00
2022-02-25 05:50:18 +10:00
2021-08-10 20:14:01 +02:00
2022-03-09 08:34:55 +02:00
2022-02-28 14:57:14 +10:00
2022-02-14 12:27:01 +00:00
2022-02-25 05:50:18 +10:00
2022-02-23 10:44:43 +01:00
2022-02-25 05:50:18 +10:00
2022-01-27 19:15:49 +01:00
2022-02-28 14:57:14 +10:00
2022-01-27 19:15:46 +01:00
2021-09-25 08:20:48 -07:00
2022-02-25 05:50:18 +10:00
2022-03-10 09:26:50 +10:00
2022-02-25 05:50:18 +10:00
2022-03-04 13:41:57 +10:00
2022-02-25 17:57:23 +01:00
2022-03-04 13:41:57 +10:00
2022-03-04 13:41:57 +10:00
2021-11-30 11:10:03 +01:00
2022-02-25 05:50:18 +10:00
2021-10-28 14:59:38 +10:00
2022-02-28 14:57:14 +10:00
2022-03-04 13:41:57 +10:00
2022-02-25 05:50:18 +10:00
2022-02-23 10:04:14 +01:00
2022-02-23 10:46:32 +01:00
2022-01-27 19:15:47 +01:00
2022-03-04 13:41:57 +10:00
2022-02-14 21:53:17 +08:00
2022-02-25 17:57:05 +01:00
2022-02-25 14:14:28 +01:00
2022-02-25 17:57:10 +01:00
2022-03-04 13:41:57 +10:00
2022-01-27 19:15:47 +01:00
2022-01-27 19:15:50 +01:00
2022-03-04 13:41:57 +10:00
2022-02-25 05:50:18 +10:00
2022-01-27 19:15:48 +01:00
2022-02-07 16:35:35 -08:00
2022-03-01 22:37:13 -01:00
2022-02-25 05:50:18 +10:00
2022-02-28 14:57:14 +10:00
2021-12-02 11:12:39 +01:00
2021-08-10 20:14:01 +02:00
2022-02-14 09:42:01 +01:00
2022-02-23 15:03:51 -05:00
2022-02-07 17:03:24 +01:00
2022-02-25 05:50:18 +10:00
2022-02-07 17:03:24 +01:00
2021-08-02 10:19:43 +02:00
2022-01-14 14:31:54 +01:00
2022-02-25 17:57:14 +01:00
2022-02-16 12:32:07 +02:00
2022-01-26 09:40:24 +01:00
2021-11-26 16:45:22 +01:00
2022-02-15 15:25:18 -08:00
2021-09-24 19:25:23 +02:00
2022-02-23 10:44:43 +01:00
2021-08-02 10:19:43 +02:00
2022-02-25 05:50:18 +10:00
2022-02-07 13:04:25 -08:00
2022-02-07 16:35:35 -08:00
2022-01-25 09:36:20 +01:00
2021-11-02 14:27:11 +01:00
2022-01-17 11:25:44 +01:00
2021-10-04 09:34:57 -04:00
2021-08-20 12:35:59 +02:00
2021-08-02 10:19:43 +02:00
2022-02-15 15:25:18 -08:00
2021-10-14 21:39:02 +02:00
2022-01-17 11:25:44 +01:00
2022-02-28 14:57:14 +10:00
2022-02-25 05:50:18 +10:00
2021-08-02 10:19:43 +02:00
2022-02-16 13:29:04 +01:00
2021-12-16 11:23:22 +01:00
2022-01-31 21:45:23 +01:00
2021-10-25 09:33:22 +02:00
2022-02-28 14:57:14 +10:00
2022-02-07 16:35:35 -08:00
2022-02-25 05:50:18 +10:00
2022-02-07 16:35:35 -08:00
2022-02-07 16:35:35 -08:00
2022-02-25 05:50:18 +10:00
2021-11-30 09:41:28 +01:00
2021-08-02 10:19:43 +02:00
2022-02-07 16:35:35 -08:00
2021-08-17 13:56:03 -04:00
2022-01-31 21:45:23 +01:00
2021-10-22 16:20:12 +02:00
2022-01-17 11:25:44 +01:00
2021-10-01 15:55:47 +02:00
2021-08-10 20:14:01 +02:00
2021-11-30 09:41:28 +01:00
2022-02-07 16:35:35 -08:00
2021-09-24 19:25:33 +02:00
2022-01-22 08:33:37 +02:00
2022-02-25 17:55:42 +01:00
2022-02-28 10:29:33 +01:00
2022-01-22 08:33:37 +02:00
2021-11-27 21:05:58 +01:00
2022-02-25 17:08:37 +01:00
2022-01-31 13:19:33 -05:00
2021-10-07 12:24:44 +02:00
2022-01-31 21:45:24 +01:00
2022-02-07 16:35:35 -08:00
2021-08-19 09:02:55 +09:00
2022-02-01 19:02:41 +10:00
2022-02-25 05:50:18 +10:00
2021-11-02 14:27:14 +01:00
2021-10-07 05:42:13 +03:00
2021-08-02 10:19:43 +02:00
2021-08-08 20:14:08 +02:00
2022-02-11 11:30:01 +01:00
2021-11-02 14:27:06 +01:00
2021-08-10 20:14:01 +02:00
2021-08-02 10:19:43 +02:00
2022-02-23 10:43:25 +01:00
2022-02-16 13:29:04 +01:00