From: Daniel Vetter <daniel@ffwll.ch>
To: Daniel Stone <daniel@fooishbar.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
Intel Graphics Development <intel-gfx@lists.freedesktop.org>,
Daniel Stone <daniels@collabora.com>,
DRI Development <dri-devel@lists.freedesktop.org>
Subject: Re: [PATCH 28/28] drm/atomic-helper: Reject legacy flips on a disabled pipe
Date: Tue, 8 Dec 2015 09:23:23 +0100 [thread overview]
Message-ID: <20151208082323.GC20822@phenom.ffwll.local> (raw)
In-Reply-To: <CAPj87rNvWYVrSpn5MDfE=eC4DZgBEkcXHSrMKUbt1ExTGk28KA@mail.gmail.com>
On Mon, Dec 07, 2015 at 03:33:00PM +0000, Daniel Stone wrote:
> Hi,
>
> On 4 December 2015 at 08:46, Daniel Vetter <daniel.vetter@ffwll.ch> wrote:
> > + /*
> > + * Reject event generation for when a CRTC is off and stays off. It
> > + * wouldn't be hard to implement this, but userspace has a track record
> > + * of happily burning through 100% cpu (or worse, crash) when the
> > + * display pipe is suspended. To avoid all that fun just reject updates
> > + * that ask for events since likely that indicates a bug in the
> > + * compositors drawing loop. This is consistent with the vblank ioctl
> > + * which also rejects service on a disabled pipe.
> > + */
>
> Sorry to keep whingeing, but this isn't actually related to event
> generation. To the best of my knowledge, this change does a few
> things. Firstly, comments the check above (enforcing that (flags &
> ALLOW_MODESET) == {crtcs}->allow_modeset), which is good. But the
> comment is incorrect, because whether or not an event is requested is
> wholly unrelated. Secondly, it disables allow_modeset on pageflip,
> which shouldn't be changing DPMS stage (good!). Thirdly, it enforces
> something like the above statement on pageflips, except again it has
> no regard to events: it just enforces the no-DPMS-on-flip rule, for
> which event generation is a subset.
Well the comment is completely misplace, I wanted to put it next to the
check for event generation, not here.
> If you fix the above comment to more accurately note that this just
> enforces that you need the ALLOW_MODESET flag to change active, mode
> or connector routing, and (as Thierry asked), add a comment below to
> note that we enforce existing no-DPMS-on-flip semantics in the helper,
> then you're welcome to my R-b. But please don't mention events in the
> new comment. :)
Hm, I didn't really want to type a comment for ALLOW_MODESET - imo it's
pretty clear what it does and why it's useful. I'll try again at making
something coheren here ;-)
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx
prev parent reply other threads:[~2015-12-08 8:23 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-04 8:45 [PATCH 00/28] kerneldoc for display vtables Daniel Vetter
2015-12-04 8:45 ` [PATCH 01/28] drm: Polish fbdev helper struct docs Daniel Vetter
2015-12-07 10:45 ` Thierry Reding
2015-12-07 11:50 ` Daniel Vetter
2015-12-07 11:53 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 02/28] drm: Move LEAVE/ENTER_ATOMIC_MODESET to fbdev helpers Daniel Vetter
2015-12-07 11:00 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 03/28] drm: Reorganize helper vtables and their docs Daniel Vetter
2015-12-07 11:00 ` Thierry Reding
2015-12-07 11:59 ` Daniel Vetter
2015-12-07 12:26 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 04/28] drm: Make helper vtable pointers type-safe Daniel Vetter
2015-12-07 11:01 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 05/28] drm: Merge helper docbook into kerneldoc comments Daniel Vetter
2015-12-07 11:15 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 06/28] drm/bridge: Improve kerneldoc Daniel Vetter
2015-12-04 10:43 ` Archit Taneja
2015-12-07 11:31 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 07/28] drm: Update drm_plane_funcs kerneldoc Daniel Vetter
2015-12-07 11:46 ` Thierry Reding
2015-12-07 12:34 ` Daniel Vetter
2015-12-07 12:43 ` Thierry Reding
2015-12-07 13:00 ` Daniel Vetter
2015-12-04 8:45 ` [PATCH 08/28] drm/noveau: Ditch NULL save/restore hook assignments Daniel Vetter
2015-12-07 11:47 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 09/28] drm/qxl: Drop dummy save/restore hooks Daniel Vetter
2015-12-07 11:47 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 10/28] drm/virtio: Drop dummy save/restore functions Daniel Vetter
2015-12-07 11:47 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 11/28] drm/vmwgfx: Drop dummy save/restore hooks Daniel Vetter
2015-12-07 11:48 ` Thierry Reding
2015-12-08 11:55 ` Thomas Hellstrom
2015-12-04 8:45 ` [PATCH 12/28] drm/gma500: Move to private " Daniel Vetter
2015-12-07 11:51 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 13/28] drm/nouveau: Use " Daniel Vetter
2015-12-04 14:31 ` Ilia Mirkin
2015-12-04 16:06 ` Daniel Vetter
2015-12-04 16:13 ` [PATCH] drm/nouveau: Use private save/restore hooks for CRTCs Daniel Vetter
2015-12-07 11:51 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 14/28] drm: Remove crtc/connector->save/restore hooks Daniel Vetter
2015-12-07 11:55 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 15/28] drm: Move encoder->save/restore into nouveau Daniel Vetter
2015-12-04 16:14 ` [PATCH] " Daniel Vetter
2015-12-07 11:59 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 16/28] drm: Document drm_atomic_*_get_property Daniel Vetter
2015-12-07 12:01 ` Thierry Reding
2015-12-07 12:51 ` Daniel Vetter
2015-12-04 8:45 ` [PATCH 17/28] drm: Document drm_connector_funcs Daniel Vetter
2015-12-07 12:05 ` Thierry Reding
2015-12-04 8:45 ` [PATCH 18/28] drm: connector->dpms is not optional Daniel Vetter
2015-12-07 12:06 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 19/28] drm: document drm_crtc_funcs Daniel Vetter
2015-12-07 12:25 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 20/28] drm: Add kerneldoc for drm_framebuffer_funcs Daniel Vetter
2015-12-07 12:37 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 21/28] drm: Kerneldoc for drm_mode_config_funcs Daniel Vetter
2015-12-07 13:14 ` Thierry Reding
2015-12-07 13:34 ` Daniel Vetter
2015-12-04 8:46 ` [PATCH 22/28] drm/atomic-helper: Reject attempts at re-stealing encoders Daniel Vetter
2015-12-07 13:26 ` Thierry Reding
2015-12-07 13:40 ` Daniel Vetter
2015-12-04 8:46 ` [PATCH 23/28] drm: Document drm_plane_helper_funcs Daniel Vetter
2015-12-07 14:27 ` Thierry Reding
2015-12-07 14:43 ` Daniel Vetter
2015-12-04 8:46 ` [PATCH 24/28] drm: Document drm_connector_helper_funcs Daniel Vetter
2015-12-07 14:42 ` Thierry Reding
2015-12-07 14:48 ` Daniel Vetter
2015-12-07 15:27 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 25/28] drm/atomic-helper: Mention the new system/resume helpers the docs Daniel Vetter
2015-12-07 14:45 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 26/28] drm: Move drm_display_mode an related docs into kerneldoc Daniel Vetter
2015-12-07 13:39 ` Ville Syrjälä
2015-12-07 15:02 ` Thierry Reding
2015-12-07 15:33 ` Daniel Vetter
2015-12-04 8:46 ` [PATCH 27/28] drm: Document drm_encoder/crtc_helper_funcs Daniel Vetter
2015-12-07 15:21 ` Thierry Reding
2015-12-04 8:46 ` [PATCH 28/28] drm/atomic-helper: Reject legacy flips on a disabled pipe Daniel Vetter
2015-12-07 13:42 ` Ville Syrjälä
2015-12-07 15:25 ` Thierry Reding
2015-12-07 15:33 ` Daniel Stone
2015-12-08 8:23 ` Daniel Vetter [this message]
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=20151208082323.GC20822@phenom.ffwll.local \
--to=daniel@ffwll.ch \
--cc=daniel.vetter@ffwll.ch \
--cc=daniel@fooishbar.org \
--cc=daniels@collabora.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@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.