⬢ DragonFlyBSD Kernel Audit
DF-4028 / fix.diff
← back to finding ↓ download raw
--- a/sys/dev/drm/radeon/r600_cs.c
+++ b/sys/dev/drm/radeon/r600_cs.c
@@ -459,6 +459,10 @@
 			return -EINVAL;
 		}
 	}
+	if (!track->cb_color_size_idx[i]) {
+		dev_warn(p->dev, "CB_COLOR%d_SIZE never set - refusing to rewrite ib[0]\n", i);
+		return -EINVAL;
+	}
 	/* limit max tile */
 	tmp = (height * pitch) >> 6;
 	if (tmp < slice_tile_max)