diff options
author | Chunming Zhou <David1.Zhou@amd.com> | 2016-08-16 23:41:30 -0400 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2016-08-22 13:47:20 -0400 |
commit | 0c4e7fa56112b0eaef0bf88b569608620e0465b8 (patch) | |
tree | 279d4fee9378ef0f3d560170548aa66c1feb59f9 /drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
parent | 4c7e885506eaefc55c2b45293b52cae9ef797d67 (diff) |
drm/amdgpu: link all shadow bo V2
V2:
1. use mutex instead of spinlock for shadow list, since its process could
sleep.
2. move list_del to bo destroy phase.
Signed-off-by: Chunming Zhou <David1.Zhou@amd.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 21f4b748aff0..76fd2dec7b42 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |||
@@ -1550,6 +1550,9 @@ int amdgpu_device_init(struct amdgpu_device *adev, | |||
1550 | spin_lock_init(&adev->gc_cac_idx_lock); | 1550 | spin_lock_init(&adev->gc_cac_idx_lock); |
1551 | spin_lock_init(&adev->audio_endpt_idx_lock); | 1551 | spin_lock_init(&adev->audio_endpt_idx_lock); |
1552 | 1552 | ||
1553 | INIT_LIST_HEAD(&adev->shadow_list); | ||
1554 | mutex_init(&adev->shadow_list_lock); | ||
1555 | |||
1553 | adev->rmmio_base = pci_resource_start(adev->pdev, 5); | 1556 | adev->rmmio_base = pci_resource_start(adev->pdev, 5); |
1554 | adev->rmmio_size = pci_resource_len(adev->pdev, 5); | 1557 | adev->rmmio_size = pci_resource_len(adev->pdev, 5); |
1555 | adev->rmmio = ioremap(adev->rmmio_base, adev->rmmio_size); | 1558 | adev->rmmio = ioremap(adev->rmmio_base, adev->rmmio_size); |