<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<p style="font-family:Arial;font-size:10pt;color:#0000FF;margin:5pt;" align="Left">
[AMD Official Use Only]<br>
</p>
<br>
<div>
<div>
<div>
<div style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" dir="ltr">
Reviewed-by: Rajneesh Bhardwaj <rajneesh.bhardwaj@amd.com></div>
</div>
<div id="ms-outlook-mobile-signature">
<div><br>
</div>
<div style="color: rgb(33, 33, 33); background-color: rgb(255, 255, 255);" dir="auto">
Regards,</div>
<div style="color: rgb(33, 33, 33); background-color: rgb(255, 255, 255);" dir="auto">
Rajneesh</div>
</div>
</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> Kuehling, Felix <Felix.Kuehling@amd.com><br>
<b>Sent:</b> Friday, February 18, 2022 5:32:18 PM<br>
<b>To:</b> amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org><br>
<b>Cc:</b> Bhardwaj, Rajneesh <Rajneesh.Bhardwaj@amd.com>; Tom Rix <trix@redhat.com><br>
<b>Subject:</b> [PATCH 1/1] drm/amdkfd: Fix criu_restore_bo error handling</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Clang static analysis reports this problem<br>
kfd_chardev.c:2327:2: warning: 1st function call argument<br>
  is an uninitialized value<br>
  kvfree(bo_privs);<br>
  ^~~~~~~~~~~~~~~~<br>
<br>
Make sure bo_buckets and bo_privs are initialized so freeing them in the<br>
error handling code path will never result in undefined behaviour.<br>
<br>
Fixes: 73fa13b6a511 ("drm/amdkfd: CRIU Implement KFD restore ioctl")<br>
Reported-by: Tom Rix <trix@redhat.com><br>
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com><br>
---<br>
 drivers/gpu/drm/amd/amdkfd/kfd_chardev.c | 4 ++--<br>
 1 file changed, 2 insertions(+), 2 deletions(-)<br>
<br>
diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c<br>
index fead2ed46dc6..ceeb0d5e9060 100644<br>
--- a/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c<br>
+++ b/drivers/gpu/drm/amd/amdkfd/kfd_chardev.c<br>
@@ -2092,8 +2092,8 @@ static int criu_restore_bos(struct kfd_process *p,<br>
                             uint64_t *priv_offset,<br>
                             uint64_t max_priv_data_size)<br>
 {<br>
-       struct kfd_criu_bo_bucket *bo_buckets;<br>
-       struct kfd_criu_bo_priv_data *bo_privs;<br>
+       struct kfd_criu_bo_bucket *bo_buckets = NULL;<br>
+       struct kfd_criu_bo_priv_data *bo_privs = NULL;<br>
         const bool criu_resume = true;<br>
         bool flush_tlbs = false;<br>
         int ret = 0, j = 0;<br>
-- <br>
2.32.0<br>
<br>
</div>
</span></font></div>
</div>
</body>
</html>