]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/amdgpu: make BO type check less restrictive
authorNirmoy Das <nirmoy.das@amd.com>
Mon, 15 Mar 2021 15:02:37 +0000 (16:02 +0100)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 9 Apr 2021 20:45:37 +0000 (16:45 -0400)
BO with ttm_bo_type_sg type can also have tiling_flag and metadata.
So so BO type check for only ttm_bo_type_kernel.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Nirmoy Das <nirmoy.das@amd.com>
Reported-by: Tom StDenis <Tom.StDenis@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c

index fd50e48e009aff831699023c7758a8dcfda21e23..d2265d457854f3d3910695e2f7886afc4239c61a 100644 (file)
@@ -1164,7 +1164,7 @@ int amdgpu_bo_set_tiling_flags(struct amdgpu_bo *bo, u64 tiling_flags)
        struct amdgpu_device *adev = amdgpu_ttm_adev(bo->tbo.bdev);
        struct amdgpu_bo_user *ubo;
 
-       BUG_ON(bo->tbo.type != ttm_bo_type_device);
+       BUG_ON(bo->tbo.type == ttm_bo_type_kernel);
        if (adev->family <= AMDGPU_FAMILY_CZ &&
            AMDGPU_TILING_GET(tiling_flags, TILE_SPLIT) > 6)
                return -EINVAL;
@@ -1186,7 +1186,7 @@ void amdgpu_bo_get_tiling_flags(struct amdgpu_bo *bo, u64 *tiling_flags)
 {
        struct amdgpu_bo_user *ubo;
 
-       BUG_ON(bo->tbo.type != ttm_bo_type_device);
+       BUG_ON(bo->tbo.type == ttm_bo_type_kernel);
        dma_resv_assert_held(bo->tbo.base.resv);
        ubo = to_amdgpu_bo_user(bo);
 
@@ -1213,7 +1213,7 @@ int amdgpu_bo_set_metadata (struct amdgpu_bo *bo, void *metadata,
        struct amdgpu_bo_user *ubo;
        void *buffer;
 
-       BUG_ON(bo->tbo.type != ttm_bo_type_device);
+       BUG_ON(bo->tbo.type == ttm_bo_type_kernel);
        ubo = to_amdgpu_bo_user(bo);
        if (!metadata_size) {
                if (ubo->metadata_size) {
@@ -1263,7 +1263,7 @@ int amdgpu_bo_get_metadata(struct amdgpu_bo *bo, void *buffer,
        if (!buffer && !metadata_size)
                return -EINVAL;
 
-       BUG_ON(bo->tbo.type != ttm_bo_type_device);
+       BUG_ON(bo->tbo.type == ttm_bo_type_kernel);
        ubo = to_amdgpu_bo_user(bo);
        if (buffer) {
                if (buffer_size < ubo->metadata_size)