<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 dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
looks good to me.<br>
</div>
<div dir="auto" style="direction: ltr; margin: 0; padding: 0; font-family: sans-serif; font-size: 11pt; color: black; ">
</div>
<div dir="auto" style="direction: ltr; margin: 0px; padding: 0px; font-family: sans-serif; font-size: 11pt; color: black; text-align: left;">
But maybe build_bug_on works too and more reasonable to detect such wrong usage.</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> Chen, Guchun <Guchun.Chen@amd.com><br>
<b>Sent:</b> Friday, September 10, 2021 12:30:14 PM<br>
<b>To:</b> amd-gfx@lists.freedesktop.org <amd-gfx@lists.freedesktop.org>; dri-devel@lists.freedesktop.org <dri-devel@lists.freedesktop.org>; Koenig, Christian <Christian.Koenig@amd.com>; Pan, Xinhui <Xinhui.Pan@amd.com>; Deucher, Alexander <Alexander.Deucher@amd.com><br>
<b>Cc:</b> Chen, Guchun <Guchun.Chen@amd.com>; Shi, Leslie <Yuliang.Shi@amd.com><br>
<b>Subject:</b> [PATCH] drm/ttm: add a BUG_ON in ttm_set_driver_manager when array bounds</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Vendor will define their own memory types on top of TTM_PL_PRIV,<br>
but call ttm_set_driver_manager directly without checking mem_type<br>
value when setting up memory manager. So add such check to aware<br>
the case when array bounds.<br>
<br>
Signed-off-by: Leslie Shi <Yuliang.Shi@amd.com><br>
Signed-off-by: Guchun Chen <guchun.chen@amd.com><br>
---<br>
 include/drm/ttm/ttm_device.h | 1 +<br>
 1 file changed, 1 insertion(+)<br>
<br>
diff --git a/include/drm/ttm/ttm_device.h b/include/drm/ttm/ttm_device.h<br>
index 7a0f561c57ee..24ad76ca8022 100644<br>
--- a/include/drm/ttm/ttm_device.h<br>
+++ b/include/drm/ttm/ttm_device.h<br>
@@ -308,6 +308,7 @@ ttm_manager_type(struct ttm_device *bdev, int mem_type)<br>
 static inline void ttm_set_driver_manager(struct ttm_device *bdev, int type,<br>
                                           struct ttm_resource_manager *manager)<br>
 {<br>
+       BUG_ON(type >= TTM_NUM_MEM_TYPES);<br>
         bdev->man_drv[type] = manager;<br>
 }<br>
 <br>
-- <br>
2.17.1<br>
<br>
</div>
</span></font></div>
</div>
</body>
</html>