On Mon, Aug 16, 2010 at 4:53 PM, Alex Deucher <alexdeucher at gmail.com> wrote: > On Mon, Aug 16, 2010 at 4:39 PM, Dave Airlie <airlied at redhat.com> wrote: >> On Mon, 2010-08-16 at 09:54 -0400, Jerome Glisse wrote: >>> On 08/16/2010 09:22 AM, Alex Deucher wrote: >>> > On Mon, Aug 16, 2010 at 9:19 AM, Jerome Glisse <glisse at >>> > freedesktop.org> wrote: >>> >> On 08/13/2010 12:48 AM, Alex Deucher wrote: >>> >>> Initialize nsamples to 1 in case userspace does not emit >>> >>> PA_SC_AA_CONFIG. >>> >>> >>> >>> Signed-off-by: Alex Deucher <alexdeucher at gmail.com> >>> >>> Cc: Andre Maasikas <amaasikas at gmail.com> >>> >>> --- >>> >>> ?drivers/gpu/drm/radeon/r600_cs.c | ? ?1 + >>> >>> ?1 files changed, 1 insertions(+), 0 deletions(-) >>> >>> >>> >>> diff --git a/drivers/gpu/drm/radeon/r600_cs.c >>> >>> b/drivers/gpu/drm/radeon/r600_cs.c >>> >>> index 8e165b2..b03f93b 100644 >>> >>> --- a/drivers/gpu/drm/radeon/r600_cs.c >>> >>> +++ b/drivers/gpu/drm/radeon/r600_cs.c >>> >>> @@ -163,6 +163,7 @@ static void r600_cs_track_init(struct r600_cs_track >>> >>> *track) >>> >>> ? ? ? track->db_depth_size = 0xFFFFFFFF; >>> >>> ? ? ? track->db_depth_size_idx = 0; >>> >>> ? ? ? track->db_depth_control = 0xFFFFFFFF; >>> >>> + ? ? track->nsamples = 1; >>> >>> ?} >>> >>> >>> >>> ?static inline int r600_cs_track_validate_cb(struct radeon_cs_parser >>> >>> *p, int i) >>> >> >>> >> I would NAK this one, accepting such things pretty much defeat the idea >>> >> of checker, i think userspace should always set nsamples as otherwise it >>> >> might trick kernel and overwritte others memory. ie: >>> >> cs1 set nsample 8 & all others properly so cs1 is accepted >>> >> cs2 don't set nsample but bind a smaller bo and so can overwritte others >>> >> buffer >>> > >>> > Unfortunately, existing userspace already sends buffers without this >>> > reg set. It's just that prior to tiling we didn't care what it was set >>> > to. >>> > >>> > Alex >>> >>> I guess once again we hit by our own fault of prematurely going out of >>> staging. >> >> Jerome, staying in staging forever until every feature of the hw is >> implemented isn't possible, at some point you have to do real engineer >> work and this sounds like its workaroundable >> >> How about if we get a tiling CB in the checker, we make sure nsamples is >> set? will that work? >> > > I've fixed the issue in mesa. ?The problematic mesa code has not been > officially part of a release yet. ?That said, I think 1 is a > reasonable default for nsamples regardless as unless MSAA is enabled, > you can pretty safely assume 1. >
If we don't set a default value, we would need to make sure IBs always contain PA_SC_AA_CONFIG which is nor currently enforced. Thoughts? Alex > Alex > >> Dave. >> >> >> >