From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: "Souza, Jose" <jose.souza@intel.com>
Cc: "daniel@ffwll.ch" <daniel@ffwll.ch>,
"Mun, Gwan-gyeong" <gwan-gyeong.mun@intel.com>,
"Nikula, Jani" <jani.nikula@intel.com>,
"intel-gfx@lists.freedesktop.org"
<intel-gfx@lists.freedesktop.org>,
"Vivi, Rodrigo" <rodrigo.vivi@intel.com>
Subject: Re: [Intel-gfx] [PATCH CI 1/2] drm/i915/display/skl+: Drop frontbuffer rendering support
Date: Wed, 15 Sep 2021 18:57:19 +0300 [thread overview]
Message-ID: <YUIX3+B3tHTk/SwW@intel.com> (raw)
In-Reply-To: <YUH5wR96pc0D09BD@intel.com>
On Wed, Sep 15, 2021 at 04:48:49PM +0300, Ville Syrjälä wrote:
> On Mon, Sep 13, 2021 at 10:54:14PM +0000, Souza, Jose wrote:
> > On Thu, 2021-09-09 at 23:28 +0300, Ville Syrjälä wrote:
> > > On Thu, Sep 09, 2021 at 08:23:20PM +0000, Souza, Jose wrote:
> > > > On Thu, 2021-09-09 at 23:20 +0300, Ville Syrjälä wrote:
> > > > > On Thu, Sep 09, 2021 at 12:49:16PM -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.
> > > > > >
> > > > >
> > > > > I just gave this a try here and it's unusable. glxgears went from
> > > > > 9000 to 120 fps (was expecting 60fps tbh, not sure why I get
> > > > > double), everything lags like mad, if I drag a window around
> > > > > glxgears/other windows stop updating entirely, etc. NAK
> > > >
> > > > Can you share your setup? What GPU? Desktop environment? Mesa version? resolutions of sinks?
> > > > Will try it in my end.
> > >
> > > Doesn't really matter as long as you don't have a compositor making a
> > > mess of things. This machine is a cfl running mate w/ compositor off,
> > > and some 1920x1200 display.
> > >
> >
> > Making drm_atomic_helper_dirtyfb() do a non-blocking atomic commit makes user experience pretty similar to the one with compositing enabled:
> > drm_atomic_commit() + compositor off: https://youtu.be/NBt6smXs99U
> > drm_atomic_nonblocking_commit() + compositor off: https://youtu.be/QiMhkeGX_L8
> > drm_atomic_nonblocking_commit() + compositor on: https://youtu.be/KdpJyJ5k6sQ
> >
> >
> > I do not completly agree with the comment in drm_atomic_helper_dirtyfb() about why it uses a blocking implementation.
> > With frontbuffer rendering the registers are programmed but the content could only show up for user a whole frame later.
> >
> > Perhaps if this solutions is accetable we could have a non-blocking version of drm_atomic_helper_dirtyfb() so the drivers current using it don't have
> > their behavior changed.
>
> Non-blocking update would make sense to me, whereas a blocking
> update makes no sense given how this is used by actual userspace.
Actually neither maybe makes total sense since userspace probably
isn't expecting -EBUSY from dirtyfb. So we might end up with stale
junk on the screen if no further updates come in after an -EBUSY.
The current frontbuffer stuff works much more like a mailbox style
update so we don't lose stuff and neither do we block.
--
Ville Syrjälä
Intel
next prev parent reply other threads:[~2021-09-15 15:57 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-09 19:49 [Intel-gfx] [PATCH CI 1/2] drm/i915/display/skl+: Drop frontbuffer rendering support José Roberto de Souza
2021-09-09 19:49 ` [Intel-gfx] [PATCH CI 2/2] drm/i915/display: Drop PSR " José Roberto de Souza
2021-09-09 20:02 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for series starting with [CI,1/2] drm/i915/display/skl+: Drop " Patchwork
2021-09-09 20:20 ` [Intel-gfx] [PATCH CI 1/2] " Ville Syrjälä
2021-09-09 20:23 ` Souza, Jose
2021-09-09 20:28 ` Ville Syrjälä
2021-09-13 22:54 ` Souza, Jose
2021-09-15 13:48 ` Ville Syrjälä
2021-09-15 15:57 ` Ville Syrjälä [this message]
2021-09-15 16:49 ` Ville Syrjälä
2021-09-15 20:05 ` Souza, Jose
2021-09-15 19:50 ` Souza, Jose
2021-09-09 20:33 ` [Intel-gfx] ✗ Fi.CI.BAT: failure for series starting with [CI,1/2] " Patchwork
2021-09-14 0:17 ` [Intel-gfx] ✗ Fi.CI.BUILD: failure for series starting with [CI,1/2] drm/i915/display/skl+: Drop frontbuffer rendering support (rev2) Patchwork
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YUIX3+B3tHTk/SwW@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=daniel@ffwll.ch \
--cc=gwan-gyeong.mun@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
--cc=jani.nikula@intel.com \
--cc=jose.souza@intel.com \
--cc=rodrigo.vivi@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox