--- 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)