Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/xe: fixup xe_alloc_pf_queue
@ 2024-08-21 17:19 Matthew Auld
  2024-08-21 17:46 ` ✓ CI.Patch_applied: success for " Patchwork
                   ` (9 more replies)
  0 siblings, 10 replies; 12+ messages in thread
From: Matthew Auld @ 2024-08-21 17:19 UTC (permalink / raw)
  To: intel-xe; +Cc: Stuart Summers, Matthew Brost

kzalloc expects number of bytes, therefore we should convert the number
of dw into bytes, otherwise we are likely just accessing beyond the
array causing all kinds of carnage. Also fixup the error handling while
we are here.

Fixes: 3338e4f90c14 ("drm/xe: Use topology to determine page fault queue size")
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Stuart Summers <stuart.summers@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
---
 drivers/gpu/drm/xe/xe_gt_pagefault.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_gt_pagefault.c b/drivers/gpu/drm/xe/xe_gt_pagefault.c
index 401c0527d914..e4510e56e4a2 100644
--- a/drivers/gpu/drm/xe/xe_gt_pagefault.c
+++ b/drivers/gpu/drm/xe/xe_gt_pagefault.c
@@ -417,7 +417,10 @@ static int xe_alloc_pf_queue(struct xe_gt *gt, struct pf_queue *pf_queue)
 		(num_eus + XE_NUM_HW_ENGINES) * PF_MSG_LEN_DW;
 
 	pf_queue->gt = gt;
-	pf_queue->data = kzalloc(pf_queue->num_dw, GFP_KERNEL);
+	pf_queue->data = kzalloc(pf_queue->num_dw * sizeof(u32), GFP_KERNEL);
+	if (!pf_queue->data)
+		return -ENOMEM;
+
 	spin_lock_init(&pf_queue->lock);
 	INIT_WORK(&pf_queue->worker, pf_queue_work_func);
 
-- 
2.46.0


^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2024-08-22  8:54 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-21 17:19 [PATCH] drm/xe: fixup xe_alloc_pf_queue Matthew Auld
2024-08-21 17:46 ` ✓ CI.Patch_applied: success for " Patchwork
2024-08-21 17:47 ` ✗ CI.checkpatch: warning " Patchwork
2024-08-21 17:48 ` ✓ CI.KUnit: success " Patchwork
2024-08-21 17:59 ` ✓ CI.Build: " Patchwork
2024-08-21 18:02 ` ✓ CI.Hooks: " Patchwork
2024-08-21 18:03 ` ✓ CI.checksparse: " Patchwork
2024-08-21 18:15 ` [PATCH] " Nirmoy Das
2024-08-21 18:23 ` ✓ CI.BAT: success for " Patchwork
2024-08-21 23:54 ` ✗ CI.FULL: failure " Patchwork
2024-08-22  2:49 ` [PATCH] " Matthew Brost
2024-08-22  8:54   ` Matthew Auld

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox