DragonFlyBSD Kernel Audit
DF-1807 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/drm/amd/amdgpu/amdgpu_fence.c b/sys/dev/drm/amd/amdgpu/amdgpu_fence.c
--- a/sys/dev/drm/amd/amdgpu/amdgpu_fence.c
+++ b/sys/dev/drm/amd/amdgpu/amdgpu_fence.c
@@ -421,7 +421,8 @@
 	int r;
 
 	/* Check that num_hw_submission is a power of two */
-	if ((num_hw_submission & (num_hw_submission - 1)) != 0)
+	if (!num_hw_submission ||
+	    (num_hw_submission & (num_hw_submission - 1)) != 0)
 		return -EINVAL;
 
 	ring->fence_drv.cpu_addr = NULL;