From: Daniel Vetter <daniel@ffwll.ch>
To: Boris Brezillon <boris.brezillon@bootlin.com>
Cc: David Airlie <airlied@linux.ie>,
Liviu Dudau <Liviu.Dudau@arm.com>,
dri-devel@lists.freedesktop.org
Subject: Re: [PATCH v2 5/8] drm/atomic: Call drm_atomic_helper_fake_vblank() from the generic commit_tail() helpers
Date: Mon, 2 Jul 2018 09:54:32 +0200 [thread overview]
Message-ID: <20180702075432.GD13978@phenom.ffwll.local> (raw)
In-Reply-To: <20180629111722.20299-6-boris.brezillon@bootlin.com>
On Fri, Jun 29, 2018 at 01:17:18PM +0200, Boris Brezillon wrote:
> Now that we have a way to fake VBLANK events when requested by the CRTC
> hook it up to the generic commit_tail() helpers.
>
> Signed-off-by: Boris Brezillon <boris.brezillon@bootlin.com>
I really don't like this. We've had epic amounts of bugs with atomic
drivers failing to send out vblank events when they should, and I added a
bunch of debug checks to make sure that doesn't happen anymore.
Now there's no way anymore for drivers to spot this until they have
misrenderings on wayland and no idea why. Imo this should only be used by
specific drivers, with a comment why exactly they need it.
-Daniel
> ---
> drivers/gpu/drm/drm_atomic_helper.c | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
> index ca586993c2a2..1a088462bc42 100644
> --- a/drivers/gpu/drm/drm_atomic_helper.c
> +++ b/drivers/gpu/drm/drm_atomic_helper.c
> @@ -1448,6 +1448,8 @@ void drm_atomic_helper_commit_tail(struct drm_atomic_state *old_state)
>
> drm_atomic_helper_commit_modeset_enables(dev, old_state);
>
> + drm_atomic_helper_fake_vblank(old_state);
> +
> drm_atomic_helper_commit_hw_done(old_state);
>
> drm_atomic_helper_wait_for_vblanks(dev, old_state);
> @@ -1477,6 +1479,8 @@ void drm_atomic_helper_commit_tail_rpm(struct drm_atomic_state *old_state)
> drm_atomic_helper_commit_planes(dev, old_state,
> DRM_PLANE_COMMIT_ACTIVE_ONLY);
>
> + drm_atomic_helper_fake_vblank(old_state);
> +
> drm_atomic_helper_commit_hw_done(old_state);
>
> drm_atomic_helper_wait_for_vblanks(dev, old_state);
> --
> 2.14.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
next prev parent reply other threads:[~2018-07-02 7:54 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-29 11:17 [PATCH v2 0/8] drm/vc4: Add support for the transposer IP Boris Brezillon
2018-06-29 11:17 ` [PATCH v2 1/8] drm/atomic: Avoid connector to writeback_connector casts Boris Brezillon
2018-07-02 7:49 ` Daniel Vetter
2018-06-29 11:17 ` [PATCH v2 2/8] drm/connector: Pass a drm_connector_state to ->atomic_commit() Boris Brezillon
2018-06-29 11:23 ` Liviu Dudau
2018-06-29 11:37 ` Liviu Dudau
2018-07-02 7:51 ` Daniel Vetter
2018-07-02 9:49 ` Boris Brezillon
2018-07-02 11:14 ` Liviu Dudau
2018-07-02 11:58 ` Boris Brezillon
2018-06-29 11:17 ` [PATCH v2 3/8] drm/vc4: Use wait_for_flip_done() instead of wait_for_vblanks() Boris Brezillon
2018-06-29 20:19 ` Eric Anholt
2018-06-29 11:17 ` [PATCH v2 4/8] drm/crtc: Add a generic infrastructure to fake VBLANK events Boris Brezillon
2018-06-29 11:38 ` Liviu Dudau
2018-07-02 8:02 ` Daniel Vetter
2018-07-02 8:14 ` Boris Brezillon
2018-07-02 8:37 ` Daniel Vetter
2018-07-02 9:01 ` Boris Brezillon
2018-07-02 8:40 ` Daniel Vetter
2018-07-02 8:46 ` Boris Brezillon
2018-06-29 11:17 ` [PATCH v2 5/8] drm/atomic: Call drm_atomic_helper_fake_vblank() from the generic commit_tail() helpers Boris Brezillon
2018-06-29 11:38 ` Liviu Dudau
2018-07-02 7:54 ` Daniel Vetter [this message]
2018-07-02 7:57 ` Daniel Vetter
2018-07-02 7:59 ` Boris Brezillon
2018-07-02 7:58 ` Boris Brezillon
2018-06-29 11:17 ` [PATCH v2 6/8] drm/vc4: Call drm_atomic_helper_fake_vblank() in the commit path Boris Brezillon
2018-06-29 20:27 ` Eric Anholt
2018-06-29 11:17 ` [PATCH v2 7/8] drm/vc4: Add support for the transposer block Boris Brezillon
2018-06-29 20:35 ` Eric Anholt
2018-07-02 10:19 ` Boris Brezillon
2018-06-29 11:17 ` [PATCH v2 8/8] ARM: dts: bcm283x: Add Transposer block Boris Brezillon
2018-06-29 20:27 ` Eric Anholt
2018-06-29 11:17 ` [PATCH v2 0/8] drm/vc4: Add support for the transposer IP Boris Brezillon
2018-06-29 11:40 ` Liviu Dudau
2018-07-02 10:21 ` Boris Brezillon
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=20180702075432.GD13978@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=Liviu.Dudau@arm.com \
--cc=airlied@linux.ie \
--cc=boris.brezillon@bootlin.com \
--cc=dri-devel@lists.freedesktop.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.