Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/xe: Fix uninitialized pointer read in xe_vm_bind_kernel_bo
@ 2025-02-06 13:47 Dheeraj Reddy Jonnalagadda
  2025-02-06 16:33 ` Cavitt, Jonathan
                   ` (9 more replies)
  0 siblings, 10 replies; 11+ messages in thread
From: Dheeraj Reddy Jonnalagadda @ 2025-02-06 13:47 UTC (permalink / raw)
  To: lucas.demarchi, thomas.hellstrom, rodrigo.vivi
  Cc: airlied, simona, intel-xe, dri-devel, linux-kernel,
	Dheeraj Reddy Jonnalagadda

xe_vm_bind_kernel_bo() declares the variable fence without initializing
it. If an error occurs before fence is assigned a valid value, the
function may return an uninitialized pointer.

Specifically, this can happen if:

- vm_bind_ioctl_ops_create() fails, leading to release_vm_lock error
  path

Initialize fence to NULL at declaration.

Fixes: dcdd6b84d9ac ("drm/xe/pxp: Allocate PXP execution resources")
Signed-off-by: Dheeraj Reddy Jonnalagadda <dheeraj.linuxdev@gmail.com>
---
 drivers/gpu/drm/xe/xe_vm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
index d664f2e418b2..b6ca53ede904 100644
--- a/drivers/gpu/drm/xe/xe_vm.c
+++ b/drivers/gpu/drm/xe/xe_vm.c
@@ -3184,7 +3184,7 @@ struct dma_fence *xe_vm_bind_kernel_bo(struct xe_vm *vm, struct xe_bo *bo,
 {
 	struct xe_vma_ops vops;
 	struct drm_gpuva_ops *ops = NULL;
-	struct dma_fence *fence;
+	struct dma_fence *fence = NULL;
 	int err;
 
 	xe_bo_get(bo);
-- 
2.34.1


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

end of thread, other threads:[~2025-02-06 19:25 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-06 13:47 [PATCH] drm/xe: Fix uninitialized pointer read in xe_vm_bind_kernel_bo Dheeraj Reddy Jonnalagadda
2025-02-06 16:33 ` Cavitt, Jonathan
2025-02-06 16:58 ` Lucas De Marchi
2025-02-06 17:17 ` ✓ CI.Patch_applied: success for " Patchwork
2025-02-06 17:18 ` ✓ CI.checkpatch: " Patchwork
2025-02-06 17:19 ` ✓ CI.KUnit: " Patchwork
2025-02-06 17:35 ` ✓ CI.Build: " Patchwork
2025-02-06 17:38 ` ✓ CI.Hooks: " Patchwork
2025-02-06 17:39 ` ✓ CI.checksparse: " Patchwork
2025-02-06 17:58 ` ✓ Xe.CI.BAT: " Patchwork
2025-02-06 19:25 ` ✓ Xe.CI.Full: " Patchwork

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