<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<p style="font-family:Arial;font-size:10pt;color:#0000FF;margin:5pt;font-style:normal;font-weight:normal;text-decoration:none;" align="Left">
[AMD Official Use Only - General]<br>
</p>
<br>
<div>
<div class="elementToProof" style="font-family: Aptos, Aptos_EmbeddedFont, Aptos_MSFontService, Calibri, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
Reviewed-by: Alex Deucher <alexander.deucher@amd.com></div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> Min, Frank <Frank.Min@amd.com><br>
<b>Sent:</b> Friday, April 12, 2024 8:06 AM<br>
<b>To:</b> amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org><br>
<b>Cc:</b> Gao, Likun <Likun.Gao@amd.com>; Zhang, Hawking <Hawking.Zhang@amd.com>; Deucher, Alexander <Alexander.Deucher@amd.com>; Koenig, Christian <Christian.Koenig@amd.com><br>
<b>Subject:</b> [PATCH] drm/amdgpu: replace tmz flag into buffer flag</font>
<div> </div>
</div>
<div class="BodyFragment"><font face="Times New Roman" size="3"><span style="font-size:12pt;"><a name="BM_BEGIN"></a>
<div><font size="2"><span style="font-size:11pt;">[AMD Official Use Only - General]<br>
<br>
From: Frank Min <Frank.Min@amd.com><br>
<br>
Replace tmz flag into buffer flag to make it easier to understand and extend<br>
<br>
Signed-off-by: Likun Gao <Likun.Gao@amd.com><br>
Signed-off-by: Frank Min <Frank.Min@amd.com><br>
---<br>
drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c | 2 +-<br>
drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 2 +-<br>
drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c | 18 +++++++++++-------<br>
drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h | 4 +++-<br>
drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 2 +-<br>
drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 2 +-<br>
drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 2 +-<br>
drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c | 4 ++--<br>
drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c | 5 +++--<br>
drivers/gpu/drm/amd/amdkfd/kfd_migrate.c | 4 ++--<br>
15 files changed, 36 insertions(+), 29 deletions(-)<br>
<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c<br>
index edc6377ec5ff..199693369c7c 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.c<br>
@@ -39,7 +39,7 @@ static int amdgpu_benchmark_do_move(struct amdgpu_device *adev, unsigned size,<br>
for (i = 0; i < n; i++) {<br>
struct amdgpu_ring *ring = adev->mman.buffer_funcs_ring;<br>
r = amdgpu_copy_buffer(ring, saddr, daddr, size, NULL, &fence,<br>
- false, false, false);<br>
+ false, false, 0);<br>
if (r)<br>
goto exit_do_move;<br>
r = dma_fence_wait(fence, false);<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c<br>
index 38742ff0ff49..abb1505c82ec 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_object.c<br>
@@ -791,7 +791,7 @@ int amdgpu_bo_restore_shadow(struct amdgpu_bo *shadow, struct dma_fence **fence)<br>
<br>
return amdgpu_copy_buffer(ring, shadow_addr, parent_addr,<br>
amdgpu_bo_size(shadow), NULL, fence,<br>
- true, false, false);<br>
+ true, false, 0);<br>
}<br>
<br>
/**<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h<br>
index a22c6446817b..b5bde6652838 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h<br>
@@ -136,7 +136,7 @@ struct amdgpu_buffer_funcs {<br>
uint64_t dst_offset,<br>
/* number of byte to transfer */<br>
uint32_t byte_count,<br>
- bool tmz);<br>
+ uint32_t copy_flags);<br>
<br>
/* maximum bytes in a single operation */<br>
uint32_t fill_max_bytes;<br>
@@ -154,7 +154,7 @@ struct amdgpu_buffer_funcs {<br>
uint32_t byte_count);<br>
};<br>
<br>
-#define amdgpu_emit_copy_buffer(adev, ib, s, d, b, t) (adev)->mman.buffer_funcs->emit_copy_buffer((ib), (s), (d), (b), (t))<br>
+#define amdgpu_emit_copy_buffer(adev, ib, s, d, b, f)<br>
+(adev)->mman.buffer_funcs->emit_copy_buffer((ib), (s), (d), (b), (f))<br>
#define amdgpu_emit_fill_buffer(adev, ib, s, d, b) (adev)->mman.buffer_funcs->emit_fill_buffer((ib), (s), (d), (b))<br>
<br>
struct amdgpu_sdma_instance *<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c<br>
index f0fffbf2bdd5..d58ab879e125 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c<br>
@@ -267,7 +267,7 @@ static int amdgpu_ttm_map_buffer(struct ttm_buffer_object *bo,<br>
dst_addr = amdgpu_bo_gpu_offset(adev->gart.bo);<br>
dst_addr += window * AMDGPU_GTT_MAX_TRANSFER_SIZE * 8;<br>
amdgpu_emit_copy_buffer(adev, &job->ibs[0], src_addr,<br>
- dst_addr, num_bytes, false);<br>
+ dst_addr, num_bytes, 0);<br>
<br>
amdgpu_ring_pad_ib(ring, &job->ibs[0]);<br>
WARN_ON(job->ibs[0].length_dw > num_dw); @@ -327,6 +327,8 @@ int amdgpu_ttm_copy_mem_to_mem(struct amdgpu_device *adev,<br>
struct dma_fence *fence = NULL;<br>
int r = 0;<br>
<br>
+ uint32_t copy_flags = 0;<br>
+<br>
if (!adev->mman.buffer_funcs_enabled) {<br>
DRM_ERROR("Trying to move memory with ring turned off.\n");<br>
return -EINVAL;<br>
@@ -354,8 +356,11 @@ int amdgpu_ttm_copy_mem_to_mem(struct amdgpu_device *adev,<br>
if (r)<br>
goto error;<br>
<br>
- r = amdgpu_copy_buffer(ring, from, to, cur_size,<br>
- resv, &next, false, true, tmz);<br>
+ if (tmz)<br>
+ copy_flags |= AMDGPU_COPY_FLAGS_TMZ;<br>
+<br>
+ r = amdgpu_copy_buffer(ring, from, to, cur_size, resv,<br>
+ &next, false, true, copy_flags);<br>
if (r)<br>
goto error;<br>
<br>
@@ -1782,7 +1787,7 @@ static int amdgpu_ttm_access_memory_sdma(struct ttm_buffer_object *bo,<br>
swap(src_addr, dst_addr);<br>
<br>
amdgpu_emit_copy_buffer(adev, &job->ibs[0], src_addr, dst_addr,<br>
- PAGE_SIZE, false);<br>
+ PAGE_SIZE, 0);<br>
<br>
amdgpu_ring_pad_ib(adev->mman.buffer_funcs_ring, &job->ibs[0]);<br>
WARN_ON(job->ibs[0].length_dw > num_dw); @@ -2596,7 +2601,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,<br>
uint64_t dst_offset, uint32_t byte_count,<br>
struct dma_resv *resv,<br>
struct dma_fence **fence, bool direct_submit,<br>
- bool vm_needs_flush, bool tmz)<br>
+ bool vm_needs_flush, uint32_t copy_flags)<br>
{<br>
struct amdgpu_device *adev = ring->adev;<br>
unsigned int num_loops, num_dw;<br>
@@ -2622,8 +2627,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t src_offset,<br>
uint32_t cur_size_in_bytes = min(byte_count, max_bytes);<br>
<br>
amdgpu_emit_copy_buffer(adev, &job->ibs[0], src_offset,<br>
- dst_offset, cur_size_in_bytes, tmz);<br>
-<br>
+ dst_offset, cur_size_in_bytes, copy_flags);<br>
src_offset += cur_size_in_bytes;<br>
dst_offset += cur_size_in_bytes;<br>
byte_count -= cur_size_in_bytes;<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h<br>
index fe37697a76b9..22cdbb52ba4e 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h<br>
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.h<br>
@@ -121,6 +121,8 @@ struct amdgpu_copy_mem {<br>
unsigned long offset;<br>
};<br>
<br>
+#define AMDGPU_COPY_FLAGS_TMZ (1 << 0)<br>
+<br>
int amdgpu_gtt_mgr_init(struct amdgpu_device *adev, uint64_t gtt_size); void amdgpu_gtt_mgr_fini(struct amdgpu_device *adev); int amdgpu_preempt_mgr_init(struct amdgpu_device *adev); @@ -158,7 +160,7 @@ int amdgpu_copy_buffer(struct amdgpu_ring *ring, uint64_t
src_offset,<br>
uint64_t dst_offset, uint32_t byte_count,<br>
struct dma_resv *resv,<br>
struct dma_fence **fence, bool direct_submit,<br>
- bool vm_needs_flush, bool tmz);<br>
+ bool vm_needs_flush, uint32_t copy_flags);<br>
int amdgpu_ttm_copy_mem_to_mem(struct amdgpu_device *adev,<br>
const struct amdgpu_copy_mem *src,<br>
const struct amdgpu_copy_mem *dst, diff --git a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c<br>
index ee5dce6f6043..ab1f112a0cbd 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/cik_sdma.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/cik_sdma.c<br>
@@ -1305,7 +1305,7 @@ static void cik_sdma_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PACKET(SDMA_OPCODE_COPY, SDMA_COPY_SUB_OPCODE_LINEAR, 0);<br>
ib->ptr[ib->length_dw++] = byte_count; diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c<br>
index 7ffaaaf1fcdd..93e933915e86 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c<br>
@@ -1191,7 +1191,7 @@ static void sdma_v2_4_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR);<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c<br>
index c5ea32687eb5..45ccd12bd857 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c<br>
@@ -1631,7 +1631,7 @@ static void sdma_v3_0_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR);<br>
diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c<br>
index 7ae5f134f09b..90b936545dc9 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c<br>
@@ -2468,11 +2468,11 @@ static void sdma_v4_0_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c b/drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c<br>
index fec5a3d1c4bc..7d1d65dca627 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c<br>
@@ -1981,11 +1981,11 @@ static void sdma_v4_4_2_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c<br>
index c1ff5eda8961..6a669613d028 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c<br>
@@ -1836,11 +1836,11 @@ static void sdma_v5_0_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c<br>
index c441a20a41a3..aa0901135f30 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c<br>
@@ -1778,11 +1778,11 @@ static void sdma_v5_2_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c<br>
index f423cc6cc9d2..8a3889a20c60 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c<br>
@@ -1604,11 +1604,11 @@ static void sdma_v6_0_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_COPY_LINEAR_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c b/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c<br>
index 33f1a549e7b5..0245b0374f65 100644<br>
--- a/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c<br>
+++ b/drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c<br>
@@ -1606,11 +1606,12 @@ static void sdma_v7_0_emit_copy_buffer(struct amdgpu_ib *ib,<br>
uint64_t src_offset,<br>
uint64_t dst_offset,<br>
uint32_t byte_count,<br>
- bool tmz)<br>
+ uint32_t copy_flags)<br>
{<br>
ib->ptr[ib->length_dw++] = SDMA_PKT_COPY_LINEAR_HEADER_OP(SDMA_OP_COPY) |<br>
SDMA_PKT_COPY_LINEAR_HEADER_SUB_OP(SDMA_SUBOP_COPY_LINEAR) |<br>
- SDMA_PKT_COPY_LINEAR_HEADER_TMZ(tmz ? 1 : 0);<br>
+ SDMA_PKT_COPY_LINEAR_HEADER_TMZ((copy_flags & AMDGPU_COPY_FLAGS_TMZ)<br>
+? 1 : 0);<br>
+<br>
ib->ptr[ib->length_dw++] = byte_count - 1;<br>
ib->ptr[ib->length_dw++] = 0; /* src/dst endian swap */<br>
ib->ptr[ib->length_dw++] = lower_32_bits(src_offset); diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c<br>
index 0ed275dd6ecf..c96e10b5b86f 100644<br>
--- a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c<br>
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c<br>
@@ -77,7 +77,7 @@ svm_migrate_gart_map(struct amdgpu_ring *ring, uint64_t npages,<br>
<br>
dst_addr = amdgpu_bo_gpu_offset(adev->gart.bo);<br>
amdgpu_emit_copy_buffer(adev, &job->ibs[0], src_addr,<br>
- dst_addr, num_bytes, false);<br>
+ dst_addr, num_bytes, 0);<br>
<br>
amdgpu_ring_pad_ib(ring, &job->ibs[0]);<br>
WARN_ON(job->ibs[0].length_dw > num_dw); @@ -153,7 +153,7 @@ svm_migrate_copy_memory_gart(struct amdgpu_device *adev, dma_addr_t *sys,<br>
}<br>
<br>
r = amdgpu_copy_buffer(ring, gart_s, gart_d, size * PAGE_SIZE,<br>
- NULL, &next, false, true, false);<br>
+ NULL, &next, false, true, 0);<br>
if (r) {<br>
dev_err(adev->dev, "fail %d to copy memory\n", r);<br>
goto out_unlock;<br>
--<br>
2.34.1<br>
<br>
</span></font></div>
</span></font></div>
</div>
</body>
</html>