[Intel-gfx] [PATCH 7/8] drm/i915/display/skl+: Drop frontbuffer rendering support

Souza, Jose jose.souza at intel.com
Thu Aug 26 01:23:50 UTC 2021


On Wed, 2021-08-25 at 16:43 +0300, Ville Syrjälä wrote:
> On Wed, Aug 25, 2021 at 03:47:12PM +0300, Ville Syrjälä wrote:
> > On Wed, Aug 25, 2021 at 12:49:25AM +0000, Souza, Jose wrote:
> > > On Thu, 2021-08-19 at 19:07 +0300, Ville Syrjälä wrote:
> > > > On Wed, Aug 18, 2021 at 07:48:03PM +0000, Souza, Jose wrote:
> > > > > On Wed, 2021-08-18 at 17:55 +0300, Ville Syrjälä wrote:
> > > > > > On Tue, Aug 17, 2021 at 05:42:15PM -0700, José Roberto de Souza wrote:
> > > > > > > By now all the userspace applications should have migrated to atomic
> > > > > > > or at least be calling DRM_IOCTL_MODE_DIRTYFB.
> > > > > > > 
> > > > > > > With that we can kill frontbuffer rendering support in i915 for
> > > > > > > modern platforms.
> > > > > > > 
> > > > > > > So here converting legacy APIs into atomic commits so it can be
> > > > > > > properly handled by driver i915.
> > > > > > > 
> > > > > > > Several IGT tests will fail with this changes, because some tests
> > > > > > > were stressing those frontbuffer rendering scenarios that no userspace
> > > > > > > should be using by now, fixes to IGT should be sent soon.
> > > > > > 
> > > > > > Blocking atomic commits instead of the current lightweight frontbuffer
> > > > > > interface sounds like a terrible plan. How unusable is X with this
> > > > > > approach?
> > > > > 
> > > > > 100% usable, had no issues when running X in TGL and ADL-P.
> > > > > Added a debug message in intel_user_framebuffer_dirty() and X is not even using frontbuffer rendering at all.
> > > > 
> > > > Turn off your compositor if you want to test front buffer rendering.
> > > 
> > > Worked fine on Plasma with a 4K panel, was not able to find how to do that in Gnome.
> > 
> > I didn't think you can turn off composition with either one of those.
> > You actually confirmed it's running with everytithing unredirected and
> > eg. there was no lag moving windows around and wiggling the mouse?
> > 
> > Avoiding that lag is pretty much the sole reason why the legacy
> > cursor unsynced update stuff even exists in the driver. Hard to
> > imagine you wouldn't hit the same issue with the server getting
> > blocked on dirtyfb all the time.

That is not the only path that Windows servers that implements Wayland protocol have?
From a user experience I can't see any difference when moving the cursor around and dragging windows.

> 
> Oh and running x11perf/etc. to see the impact on the raw numbers would
> probably be good idea.
> 

Attached two x11perf runs using the cmd line below, "with-front-buffer-rendering.txt" with patches up to "drm/i915/display: Prepare DRRS for
frontbuffer rendering drop" and "no-front-buffer-rendering.txt" with all the patches in this series.


CMD line: sudo DISPLAY=:0.0 x11perf -su -dot -rect500 -srect500 -osrect500 -tilerect500 -oddsrect500 -oddosrect500 -oddtilerect500 -bigsrect500 -
bigosrect500 -bigtilerect500 -eschertilerect500 -seg500 -hseg500 -vseg500 -whseg500 -wvseg500 -line500 -wline500 -orect500 -worect500 -circle500 -
wcircle500 -fcircle500 -ellipse500 -wellipse500 -fellipse500 -trap300 -strap300 -ostrap300 -tiletrap300 -oddstrap300 -oddostrap300 -oddtiletrap300 -
bigstrap300 -bigostrap300 -bigtiletrap300 -eschertiletrap300 -aatrap300 -aa4trap300 -aa1trap300 -aatrap2x300 -aatrapezoid300 -addaatrapezoid300 -ftext
-f8text -f9text -f14text16 -f24text16 -tr10text -tr24text -polytext -polytext16 -fitext -f8itext -f9itext -f14itext16 -f24itext16 -tr10itext -
tr24itext -aa10text -aa24text -aaftext -a10text -a24text -aftext -rgb10text -rgb24text -rgbftext -caa10text -caa24text -caaftext -ca10text -ca24text -
caftext -crgb10text -crgb24text -crgbftext -scroll500 -copywinwin500 -copypixwin500 -copywinpix500 -copypixpix500 -copyplane500 -deepcopyplane500 -
putimage500 -putimagexy500 -shmput500 -shmputxy500 -shmget500 -shmgetxy500 -getimage500 -getimagexy500 -compwinwin500 -comppixwin500 -magpixwin500 -
minpixwin500 -noop -pointer -prop -gc -create -ucreate -map -unmap -destroy -popup -move -umove -movetree -resize -uresize -circulate -ucirculate
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: with-front-buffer-rendering.txt
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20210826/1a87aa37/attachment-0002.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: no-front-buffer-rendering.txt
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20210826/1a87aa37/attachment-0003.txt>


More information about the Intel-gfx mailing list