On Fri, 2019-03-22 at 07:06 +0000, Chris Wilson wrote: > Quoting José Roberto de Souza (2019-03-22 00:42:59) > > There is some kms_frontbuffer_tracking failures due FBC being > > disabled with the reason "framebuffer not tiled or fenced". > > Although the test is setting up everything correctly to have > > FBC enabled sporadically it is failing, due the alignment and size > > restrictions in __i915_vma_set_map_and_fenceable(). > > > > So lets add another FBC failure reason and skip tests when that is > > set and keep "framebuffer not tiled or fenced" as error as it > > indicates that buffer is not tiled due wrong setup of the test. > > > > Also fixing close typos. > > > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=108040 > > Cc: Paulo Zanoni <paulo.r.zanoni@xxxxxxxxx> > > Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> > > --- > > drivers/gpu/drm/i915/intel_fbc.c | 15 +++++++++++++-- > > 1 file changed, 13 insertions(+), 2 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/intel_fbc.c > > b/drivers/gpu/drm/i915/intel_fbc.c > > index 656e684e7c9a..2980a3b579e0 100644 > > --- a/drivers/gpu/drm/i915/intel_fbc.c > > +++ b/drivers/gpu/drm/i915/intel_fbc.c > > @@ -726,19 +726,30 @@ static bool intel_fbc_can_activate(struct > > intel_crtc *crtc) > > * by the CPU to the scanout and trigger updates to the > > FBC. > > * > > * Note that is possible for a tiled surface to be > > unmappable (and > > - * so have no fence associated with it) due to aperture > > constaints > > + * so have no fence associated with it) due to aperture > > constraints > > * at the time of pinning. > > * > > * FIXME with 90/270 degree rotation we should use the > > fence on > > * the normal GTT view (the rotated view doesn't even have > > a > > * fence). Would need changes to the FBC fence Y offset as > > well. > > - * For now this will effecively disable FBC with 90/270 > > degree > > + * For now this will effectively disable FBC with 90/270 > > degree > > * rotation. > > */ > > + if (!(cache->vma->flags & I915_VMA_CAN_FENCE)) { > > if (!i915_vma_is_map_and_fenceable(cache->vma)) { Thanks > > > + /* Requirements not meet see > > __i915_vma_set_map_and_fenceable() */ > > I would suggest pointing at intel_pin_and_fence_fb and > i915_gem_object_pin_to_display_plane as to why it chose not to > require > a fence. Oh so even if i915_vma_is_map_and_fenceable() returns true in intel_pin_and_fence_fb_obj() it could still fail to set the fence in i915_vma_pin_fence() because there is no fences available. So I guess is better not add 'framebuffer is not fenceable' and skip tests when 'framebuffer not tiled or fenced' is set, what do you think? > -Chris
Attachment:
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx