Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/amdgpu: export reservation_object from dmabuf to ttm (v2)

Adds an extra argument to amdgpu_bo_create, which is only used in amdgpu_prime.c.

Port of radeon commit 831b6966a60fe72d85ae3576056b4e4e0775b112.

v2: fix up kfd.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Jammy Zhou <Jammy.Zhou@amd.com>
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>

authored by

Christian König and committed by
Alex Deucher
72d7668b b7d698d7

+70 -52
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c
··· 183 183 return -ENOMEM; 184 184 185 185 r = amdgpu_bo_create(rdev, size, PAGE_SIZE, true, AMDGPU_GEM_DOMAIN_GTT, 186 - AMDGPU_GEM_CREATE_CPU_GTT_USWC, NULL, &(*mem)->bo); 186 + AMDGPU_GEM_CREATE_CPU_GTT_USWC, NULL, NULL, &(*mem)->bo); 187 187 if (r) { 188 188 dev_err(rdev->dev, 189 189 "failed to allocate BO for amdkfd (%d)\n", r);
+4 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c
··· 79 79 int time; 80 80 81 81 n = AMDGPU_BENCHMARK_ITERATIONS; 82 - r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, sdomain, 0, NULL, &sobj); 82 + r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, sdomain, 0, NULL, 83 + NULL, &sobj); 83 84 if (r) { 84 85 goto out_cleanup; 85 86 } ··· 92 91 if (r) { 93 92 goto out_cleanup; 94 93 } 95 - r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, ddomain, 0, NULL, &dobj); 94 + r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, ddomain, 0, NULL, 95 + NULL, &dobj); 96 96 if (r) { 97 97 goto out_cleanup; 98 98 }
+3 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.c
··· 86 86 87 87 struct sg_table *sg = drm_prime_pages_to_sg(&kmem_page, npages); 88 88 ret = amdgpu_bo_create(adev, size, PAGE_SIZE, false, 89 - AMDGPU_GEM_DOMAIN_GTT, 0, sg, &bo); 89 + AMDGPU_GEM_DOMAIN_GTT, 0, sg, NULL, &bo); 90 90 if (ret) 91 91 return ret; 92 92 ret = amdgpu_bo_reserve(bo, false); ··· 197 197 198 198 ret = amdgpu_bo_create_restricted(adev, size, PAGE_SIZE, 199 199 true, domain, flags, 200 - NULL, &placement, &obj); 200 + NULL, &placement, NULL, 201 + &obj); 201 202 if (ret) { 202 203 DRM_ERROR("(%d) bo create failed\n", ret); 203 204 return ret;
+3 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
··· 246 246 r = amdgpu_bo_create(adev, AMDGPU_GPU_PAGE_SIZE, 247 247 PAGE_SIZE, true, AMDGPU_GEM_DOMAIN_VRAM, 248 248 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 249 - NULL, &adev->vram_scratch.robj); 249 + NULL, NULL, &adev->vram_scratch.robj); 250 250 if (r) { 251 251 return r; 252 252 } ··· 449 449 450 450 if (adev->wb.wb_obj == NULL) { 451 451 r = amdgpu_bo_create(adev, AMDGPU_MAX_WB * 4, PAGE_SIZE, true, 452 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, &adev->wb.wb_obj); 452 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 453 + &adev->wb.wb_obj); 453 454 if (r) { 454 455 dev_warn(adev->dev, "(%d) create WB bo failed\n", r); 455 456 return r;
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_gart.c
··· 127 127 r = amdgpu_bo_create(adev, adev->gart.table_size, 128 128 PAGE_SIZE, true, AMDGPU_GEM_DOMAIN_VRAM, 129 129 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 130 - NULL, &adev->gart.robj); 130 + NULL, NULL, &adev->gart.robj); 131 131 if (r) { 132 132 return r; 133 133 }
+2 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
··· 69 69 } 70 70 } 71 71 retry: 72 - r = amdgpu_bo_create(adev, size, alignment, kernel, initial_domain, flags, NULL, &robj); 72 + r = amdgpu_bo_create(adev, size, alignment, kernel, initial_domain, 73 + flags, NULL, NULL, &robj); 73 74 if (r) { 74 75 if (r != -ERESTARTSYS) { 75 76 if (initial_domain == AMDGPU_GEM_DOMAIN_VRAM) {
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_ih.c
··· 43 43 r = amdgpu_bo_create(adev, adev->irq.ih.ring_size, 44 44 PAGE_SIZE, true, 45 45 AMDGPU_GEM_DOMAIN_GTT, 0, 46 - NULL, &adev->irq.ih.ring_obj); 46 + NULL, NULL, &adev->irq.ih.ring_obj); 47 47 if (r) { 48 48 DRM_ERROR("amdgpu: failed to create ih ring buffer (%d).\n", r); 49 49 return r;
+8 -7
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
··· 215 215 bool kernel, u32 domain, u64 flags, 216 216 struct sg_table *sg, 217 217 struct ttm_placement *placement, 218 + struct reservation_object *resv, 218 219 struct amdgpu_bo **bo_ptr) 219 220 { 220 221 struct amdgpu_bo *bo; ··· 262 261 /* Kernel allocation are uninterruptible */ 263 262 r = ttm_bo_init(&adev->mman.bdev, &bo->tbo, size, type, 264 263 &bo->placement, page_align, !kernel, NULL, 265 - acc_size, sg, NULL, &amdgpu_ttm_bo_destroy); 264 + acc_size, sg, resv, &amdgpu_ttm_bo_destroy); 266 265 if (unlikely(r != 0)) { 267 266 return r; 268 267 } ··· 276 275 int amdgpu_bo_create(struct amdgpu_device *adev, 277 276 unsigned long size, int byte_align, 278 277 bool kernel, u32 domain, u64 flags, 279 - struct sg_table *sg, struct amdgpu_bo **bo_ptr) 278 + struct sg_table *sg, 279 + struct reservation_object *resv, 280 + struct amdgpu_bo **bo_ptr) 280 281 { 281 282 struct ttm_placement placement = {0}; 282 283 struct ttm_place placements[AMDGPU_GEM_DOMAIN_MAX + 1]; ··· 289 286 amdgpu_ttm_placement_init(adev, &placement, 290 287 placements, domain, flags); 291 288 292 - return amdgpu_bo_create_restricted(adev, size, byte_align, 293 - kernel, domain, flags, 294 - sg, 295 - &placement, 296 - bo_ptr); 289 + return amdgpu_bo_create_restricted(adev, size, byte_align, kernel, 290 + domain, flags, sg, &placement, 291 + resv, bo_ptr); 297 292 } 298 293 299 294 int amdgpu_bo_kmap(struct amdgpu_bo *bo, void **ptr)
+2
drivers/gpu/drm/amd/amdgpu/amdgpu_object.h
··· 129 129 unsigned long size, int byte_align, 130 130 bool kernel, u32 domain, u64 flags, 131 131 struct sg_table *sg, 132 + struct reservation_object *resv, 132 133 struct amdgpu_bo **bo_ptr); 133 134 int amdgpu_bo_create_restricted(struct amdgpu_device *adev, 134 135 unsigned long size, int byte_align, 135 136 bool kernel, u32 domain, u64 flags, 136 137 struct sg_table *sg, 137 138 struct ttm_placement *placement, 139 + struct reservation_object *resv, 138 140 struct amdgpu_bo **bo_ptr); 139 141 int amdgpu_bo_kmap(struct amdgpu_bo *bo, void **ptr); 140 142 void amdgpu_bo_kunmap(struct amdgpu_bo *bo);
+4 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_prime.c
··· 61 61 struct dma_buf_attachment *attach, 62 62 struct sg_table *sg) 63 63 { 64 + struct reservation_object *resv = attach->dmabuf->resv; 64 65 struct amdgpu_device *adev = dev->dev_private; 65 66 struct amdgpu_bo *bo; 66 67 int ret; 67 68 69 + ww_mutex_lock(&resv->lock, NULL); 68 70 ret = amdgpu_bo_create(adev, attach->dmabuf->size, PAGE_SIZE, false, 69 - AMDGPU_GEM_DOMAIN_GTT, 0, sg, &bo); 71 + AMDGPU_GEM_DOMAIN_GTT, 0, sg, resv, &bo); 72 + ww_mutex_unlock(&resv->lock); 70 73 if (ret) 71 74 return ERR_PTR(ret); 72 75
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
··· 407 407 if (ring->ring_obj == NULL) { 408 408 r = amdgpu_bo_create(adev, ring->ring_size, PAGE_SIZE, true, 409 409 AMDGPU_GEM_DOMAIN_GTT, 0, 410 - NULL, &ring->ring_obj); 410 + NULL, NULL, &ring->ring_obj); 411 411 if (r) { 412 412 dev_err(adev->dev, "(%d) ring create failed\n", r); 413 413 return r;
+2 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_sa.c
··· 64 64 INIT_LIST_HEAD(&sa_manager->flist[i]); 65 65 } 66 66 67 - r = amdgpu_bo_create(adev, size, align, true, 68 - domain, 0, NULL, &sa_manager->bo); 67 + r = amdgpu_bo_create(adev, size, align, true, domain, 68 + 0, NULL, NULL, &sa_manager->bo); 69 69 if (r) { 70 70 dev_err(adev->dev, "(%d) failed to allocate bo for manager\n", r); 71 71 return r;
+5 -3
drivers/gpu/drm/amd/amdgpu/amdgpu_test.c
··· 59 59 goto out_cleanup; 60 60 } 61 61 62 - r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, AMDGPU_GEM_DOMAIN_VRAM, 0, 63 - NULL, &vram_obj); 62 + r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, 63 + AMDGPU_GEM_DOMAIN_VRAM, 0, 64 + NULL, NULL, &vram_obj); 64 65 if (r) { 65 66 DRM_ERROR("Failed to create VRAM object\n"); 66 67 goto out_cleanup; ··· 81 80 struct fence *fence = NULL; 82 81 83 82 r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, 84 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, gtt_obj + i); 83 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, 84 + NULL, gtt_obj + i); 85 85 if (r) { 86 86 DRM_ERROR("Failed to create GTT object %d\n", i); 87 87 goto out_lclean;
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c
··· 861 861 r = amdgpu_bo_create(adev, 256 * 1024, PAGE_SIZE, true, 862 862 AMDGPU_GEM_DOMAIN_VRAM, 863 863 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 864 - NULL, &adev->stollen_vga_memory); 864 + NULL, NULL, &adev->stollen_vga_memory); 865 865 if (r) { 866 866 return r; 867 867 }
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.c
··· 247 247 const struct common_firmware_header *header = NULL; 248 248 249 249 err = amdgpu_bo_create(adev, adev->firmware.fw_size, PAGE_SIZE, true, 250 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, bo); 250 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, bo); 251 251 if (err) { 252 252 dev_err(adev->dev, "(%d) Firmware buffer allocate failed\n", err); 253 253 err = -ENOMEM;
+3 -3
drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c
··· 156 156 r = amdgpu_bo_create(adev, bo_size, PAGE_SIZE, true, 157 157 AMDGPU_GEM_DOMAIN_VRAM, 158 158 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 159 - NULL, &adev->uvd.vcpu_bo); 159 + NULL, NULL, &adev->uvd.vcpu_bo); 160 160 if (r) { 161 161 dev_err(adev->dev, "(%d) failed to allocate UVD bo\n", r); 162 162 return r; ··· 905 905 r = amdgpu_bo_create(adev, 1024, PAGE_SIZE, true, 906 906 AMDGPU_GEM_DOMAIN_VRAM, 907 907 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 908 - NULL, &bo); 908 + NULL, NULL, &bo); 909 909 if (r) 910 910 return r; 911 911 ··· 954 954 r = amdgpu_bo_create(adev, 1024, PAGE_SIZE, true, 955 955 AMDGPU_GEM_DOMAIN_VRAM, 956 956 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 957 - NULL, &bo); 957 + NULL, NULL, &bo); 958 958 if (r) 959 959 return r; 960 960
+1 -1
drivers/gpu/drm/amd/amdgpu/amdgpu_vce.c
··· 143 143 r = amdgpu_bo_create(adev, size, PAGE_SIZE, true, 144 144 AMDGPU_GEM_DOMAIN_VRAM, 145 145 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 146 - NULL, &adev->vce.vcpu_bo); 146 + NULL, NULL, &adev->vce.vcpu_bo); 147 147 if (r) { 148 148 dev_err(adev->dev, "(%d) failed to allocate VCE bo\n", r); 149 149 return r;
+2 -2
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
··· 1101 1101 AMDGPU_GPU_PAGE_SIZE, true, 1102 1102 AMDGPU_GEM_DOMAIN_VRAM, 1103 1103 AMDGPU_GEM_CREATE_NO_CPU_ACCESS, 1104 - NULL, &pt); 1104 + NULL, NULL, &pt); 1105 1105 if (r) 1106 1106 goto error_free; 1107 1107 ··· 1303 1303 r = amdgpu_bo_create(adev, pd_size, align, true, 1304 1304 AMDGPU_GEM_DOMAIN_VRAM, 1305 1305 AMDGPU_GEM_CREATE_NO_CPU_ACCESS, 1306 - NULL, &vm->page_directory); 1306 + NULL, NULL, &vm->page_directory); 1307 1307 if (r) 1308 1308 return r; 1309 1309
+4 -2
drivers/gpu/drm/amd/amdgpu/cz_smc.c
··· 814 814 * 3. map kernel virtual address 815 815 */ 816 816 ret = amdgpu_bo_create(adev, priv->toc_buffer.data_size, PAGE_SIZE, 817 - true, AMDGPU_GEM_DOMAIN_GTT, 0, NULL, toc_buf); 817 + true, AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 818 + toc_buf); 818 819 819 820 if (ret) { 820 821 dev_err(adev->dev, "(%d) SMC TOC buffer allocation failed\n", ret); ··· 823 822 } 824 823 825 824 ret = amdgpu_bo_create(adev, priv->smu_buffer.data_size, PAGE_SIZE, 826 - true, AMDGPU_GEM_DOMAIN_GTT, 0, NULL, smu_buf); 825 + true, AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 826 + smu_buf); 827 827 828 828 if (ret) { 829 829 dev_err(adev->dev, "(%d) SMC Internal buffer allocation failed\n", ret);
+2 -2
drivers/gpu/drm/amd/amdgpu/fiji_smc.c
··· 764 764 ret = amdgpu_bo_create(adev, image_size, PAGE_SIZE, 765 765 true, AMDGPU_GEM_DOMAIN_VRAM, 766 766 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 767 - NULL, toc_buf); 767 + NULL, NULL, toc_buf); 768 768 if (ret) { 769 769 DRM_ERROR("Failed to allocate memory for TOC buffer\n"); 770 770 return -ENOMEM; ··· 774 774 ret = amdgpu_bo_create(adev, smu_internal_buffer_size, PAGE_SIZE, 775 775 true, AMDGPU_GEM_DOMAIN_VRAM, 776 776 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 777 - NULL, smu_buf); 777 + NULL, NULL, smu_buf); 778 778 if (ret) { 779 779 DRM_ERROR("Failed to allocate memory for SMU internal buffer\n"); 780 780 return -ENOMEM;
+11 -8
drivers/gpu/drm/amd/amdgpu/gfx_v7_0.c
··· 3206 3206 r = amdgpu_bo_create(adev, 3207 3207 adev->gfx.mec.num_mec *adev->gfx.mec.num_pipe * MEC_HPD_SIZE * 2, 3208 3208 PAGE_SIZE, true, 3209 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, 3209 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 3210 3210 &adev->gfx.mec.hpd_eop_obj); 3211 3211 if (r) { 3212 3212 dev_warn(adev->dev, "(%d) create HDP EOP bo failed\n", r); ··· 3373 3373 r = amdgpu_bo_create(adev, 3374 3374 sizeof(struct bonaire_mqd), 3375 3375 PAGE_SIZE, true, 3376 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, 3376 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 3377 3377 &ring->mqd_obj); 3378 3378 if (r) { 3379 3379 dev_warn(adev->dev, "(%d) create MQD bo failed\n", r); ··· 3788 3788 r = amdgpu_bo_create(adev, dws * 4, PAGE_SIZE, true, 3789 3789 AMDGPU_GEM_DOMAIN_VRAM, 3790 3790 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 3791 - NULL, &adev->gfx.rlc.save_restore_obj); 3791 + NULL, NULL, 3792 + &adev->gfx.rlc.save_restore_obj); 3792 3793 if (r) { 3793 3794 dev_warn(adev->dev, "(%d) create RLC sr bo failed\n", r); 3794 3795 return r; ··· 3832 3831 r = amdgpu_bo_create(adev, dws * 4, PAGE_SIZE, true, 3833 3832 AMDGPU_GEM_DOMAIN_VRAM, 3834 3833 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 3835 - NULL, &adev->gfx.rlc.clear_state_obj); 3834 + NULL, NULL, 3835 + &adev->gfx.rlc.clear_state_obj); 3836 3836 if (r) { 3837 3837 dev_warn(adev->dev, "(%d) create RLC c bo failed\n", r); 3838 3838 gfx_v7_0_rlc_fini(adev); ··· 3872 3870 r = amdgpu_bo_create(adev, adev->gfx.rlc.cp_table_size, PAGE_SIZE, true, 3873 3871 AMDGPU_GEM_DOMAIN_VRAM, 3874 3872 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 3875 - NULL, &adev->gfx.rlc.cp_table_obj); 3873 + NULL, NULL, 3874 + &adev->gfx.rlc.cp_table_obj); 3876 3875 if (r) { 3877 3876 dev_warn(adev->dev, "(%d) create RLC cp table bo failed\n", r); 3878 3877 gfx_v7_0_rlc_fini(adev); ··· 4854 4851 r = amdgpu_bo_create(adev, adev->gds.mem.gfx_partition_size, 4855 4852 PAGE_SIZE, true, 4856 4853 AMDGPU_GEM_DOMAIN_GDS, 0, 4857 - NULL, &adev->gds.gds_gfx_bo); 4854 + NULL, NULL, &adev->gds.gds_gfx_bo); 4858 4855 if (r) 4859 4856 return r; 4860 4857 4861 4858 r = amdgpu_bo_create(adev, adev->gds.gws.gfx_partition_size, 4862 4859 PAGE_SIZE, true, 4863 4860 AMDGPU_GEM_DOMAIN_GWS, 0, 4864 - NULL, &adev->gds.gws_gfx_bo); 4861 + NULL, NULL, &adev->gds.gws_gfx_bo); 4865 4862 if (r) 4866 4863 return r; 4867 4864 4868 4865 r = amdgpu_bo_create(adev, adev->gds.oa.gfx_partition_size, 4869 4866 PAGE_SIZE, true, 4870 4867 AMDGPU_GEM_DOMAIN_OA, 0, 4871 - NULL, &adev->gds.oa_gfx_bo); 4868 + NULL, NULL, &adev->gds.oa_gfx_bo); 4872 4869 if (r) 4873 4870 return r; 4874 4871
+5 -5
drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
··· 868 868 r = amdgpu_bo_create(adev, 869 869 adev->gfx.mec.num_mec *adev->gfx.mec.num_pipe * MEC_HPD_SIZE * 2, 870 870 PAGE_SIZE, true, 871 - AMDGPU_GEM_DOMAIN_GTT, 0, NULL, 871 + AMDGPU_GEM_DOMAIN_GTT, 0, NULL, NULL, 872 872 &adev->gfx.mec.hpd_eop_obj); 873 873 if (r) { 874 874 dev_warn(adev->dev, "(%d) create HDP EOP bo failed\n", r); ··· 995 995 /* reserve GDS, GWS and OA resource for gfx */ 996 996 r = amdgpu_bo_create(adev, adev->gds.mem.gfx_partition_size, 997 997 PAGE_SIZE, true, 998 - AMDGPU_GEM_DOMAIN_GDS, 0, 998 + AMDGPU_GEM_DOMAIN_GDS, 0, NULL, 999 999 NULL, &adev->gds.gds_gfx_bo); 1000 1000 if (r) 1001 1001 return r; 1002 1002 1003 1003 r = amdgpu_bo_create(adev, adev->gds.gws.gfx_partition_size, 1004 1004 PAGE_SIZE, true, 1005 - AMDGPU_GEM_DOMAIN_GWS, 0, 1005 + AMDGPU_GEM_DOMAIN_GWS, 0, NULL, 1006 1006 NULL, &adev->gds.gws_gfx_bo); 1007 1007 if (r) 1008 1008 return r; 1009 1009 1010 1010 r = amdgpu_bo_create(adev, adev->gds.oa.gfx_partition_size, 1011 1011 PAGE_SIZE, true, 1012 - AMDGPU_GEM_DOMAIN_OA, 0, 1012 + AMDGPU_GEM_DOMAIN_OA, 0, NULL, 1013 1013 NULL, &adev->gds.oa_gfx_bo); 1014 1014 if (r) 1015 1015 return r; ··· 3106 3106 sizeof(struct vi_mqd), 3107 3107 PAGE_SIZE, true, 3108 3108 AMDGPU_GEM_DOMAIN_GTT, 0, NULL, 3109 - &ring->mqd_obj); 3109 + NULL, &ring->mqd_obj); 3110 3110 if (r) { 3111 3111 dev_warn(adev->dev, "(%d) create MQD bo failed\n", r); 3112 3112 return r;
+1 -1
drivers/gpu/drm/amd/amdgpu/iceland_smc.c
··· 625 625 ret = amdgpu_bo_create(adev, image_size, PAGE_SIZE, 626 626 true, AMDGPU_GEM_DOMAIN_VRAM, 627 627 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 628 - NULL, toc_buf); 628 + NULL, NULL, toc_buf); 629 629 if (ret) { 630 630 DRM_ERROR("Failed to allocate memory for TOC buffer\n"); 631 631 return -ENOMEM;
+2 -2
drivers/gpu/drm/amd/amdgpu/tonga_smc.c
··· 763 763 ret = amdgpu_bo_create(adev, image_size, PAGE_SIZE, 764 764 true, AMDGPU_GEM_DOMAIN_VRAM, 765 765 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 766 - NULL, toc_buf); 766 + NULL, NULL, toc_buf); 767 767 if (ret) { 768 768 DRM_ERROR("Failed to allocate memory for TOC buffer\n"); 769 769 return -ENOMEM; ··· 773 773 ret = amdgpu_bo_create(adev, smu_internal_buffer_size, PAGE_SIZE, 774 774 true, AMDGPU_GEM_DOMAIN_VRAM, 775 775 AMDGPU_GEM_CREATE_CPU_ACCESS_REQUIRED, 776 - NULL, smu_buf); 776 + NULL, NULL, smu_buf); 777 777 if (ret) { 778 778 DRM_ERROR("Failed to allocate memory for SMU internal buffer\n"); 779 779 return -ENOMEM;