Am 14.09.2018 um 22:14 schrieb Alex Deucher: > On Fri, Sep 14, 2018 at 3:12 PM Christian König > <ckoenig.leichtzumerken at gmail.com> wrote: >> Stops crashing on SI. >> >> Signed-off-by: Christian König <christian.koenig at amd.com> > Presumably ttm allows this? Yes, actually explicitly tested this. Christian. > Acked-by: Alex Deucher <alexander.deucher at amd.com> > >> --- >> drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 48 +++++++++++++-------------------- >> 1 file changed, 18 insertions(+), 30 deletions(-) >> >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c >> index 3e450159fe1f..710e7751c567 100644 >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c >> @@ -1843,34 +1843,25 @@ int amdgpu_ttm_init(struct amdgpu_device *adev) >> (unsigned)(gtt_size / (1024 * 1024))); >> >> /* Initialize various on-chip memory pools */ >> - /* GDS Memory */ >> - if (adev->gds.mem.total_size) { >> - r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GDS, >> - adev->gds.mem.total_size); >> - if (r) { >> - DRM_ERROR("Failed initializing GDS heap.\n"); >> - return r; >> - } >> + r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GDS, >> + adev->gds.mem.total_size); >> + if (r) { >> + DRM_ERROR("Failed initializing GDS heap.\n"); >> + return r; >> } >> >> - /* GWS */ >> - if (adev->gds.gws.total_size) { >> - r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GWS, >> - adev->gds.gws.total_size); >> - if (r) { >> - DRM_ERROR("Failed initializing gws heap.\n"); >> - return r; >> - } >> + r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_GWS, >> + adev->gds.gws.total_size); >> + if (r) { >> + DRM_ERROR("Failed initializing gws heap.\n"); >> + return r; >> } >> >> - /* OA */ >> - if (adev->gds.oa.total_size) { >> - r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_OA, >> - adev->gds.oa.total_size); >> - if (r) { >> - DRM_ERROR("Failed initializing oa heap.\n"); >> - return r; >> - } >> + r = ttm_bo_init_mm(&adev->mman.bdev, AMDGPU_PL_OA, >> + adev->gds.oa.total_size); >> + if (r) { >> + DRM_ERROR("Failed initializing oa heap.\n"); >> + return r; >> } >> >> /* Register debugfs entries for amdgpu_ttm */ >> @@ -1907,12 +1898,9 @@ void amdgpu_ttm_fini(struct amdgpu_device *adev) >> >> ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_VRAM); >> ttm_bo_clean_mm(&adev->mman.bdev, TTM_PL_TT); >> - if (adev->gds.mem.total_size) >> - ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GDS); >> - if (adev->gds.gws.total_size) >> - ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GWS); >> - if (adev->gds.oa.total_size) >> - ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_OA); >> + ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GDS); >> + ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_GWS); >> + ttm_bo_clean_mm(&adev->mman.bdev, AMDGPU_PL_OA); >> ttm_bo_device_release(&adev->mman.bdev); >> amdgpu_ttm_global_fini(adev); >> adev->mman.initialized = false; >> -- >> 2.14.1 >> >> _______________________________________________ >> amd-gfx mailing list >> amd-gfx at lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/amd-gfx