[PATCH weston] Revert "compositor-drm: disable hardware cursors"

Daniel Vetter daniel at ffwll.ch
Tue Sep 8 02:16:40 PDT 2015


On Mon, Sep 07, 2015 at 04:27:56PM +0300, Pekka Paalanen wrote:
> From: Pekka Paalanen <pekka.paalanen at collabora.co.uk>
> 
> This reverts commit 6858383d51b12632481370fdc7d886a1e6bb4ebd.
> 
> The main reason for the original patch was a regression on the Intel
> drivers causing compositor framerate to drop to half during cursor
> updates or motion. The Intel problem was fixed in
> https://github.com/torvalds/linux/commit/2e7f43c41c042d6fed4d67aceeaae32d8f102e98
> The fix is included in Linux 4.1-rc6 and 4.0.5.
> 
> The comment in the original patch is still true, but arguably the
> possible minor glitches with cursor updates are less bad than not using
> cursor planes at all.
> 
> Cc: nerdopolis <bluescreen_avenger at verizon.net>
> Cc: Daniel Stone <daniel at fooishbar.org>
> Cc: Giulio Camuffo <giuliocamuffo at gmail.com>
> Cc: David FORT <contact at hardening-consulting.com>
> Signed-off-by: Pekka Paalanen <pekka.paalanen at collabora.co.uk>

Yeah, cursors are official special now in this regard (there's a special
cursor hack in atomic helpers to make sure any new driver gets this
right).

Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>

> ---
>  src/compositor-drm.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/src/compositor-drm.c b/src/compositor-drm.c
> index f5f125a..6777bf8 100644
> --- a/src/compositor-drm.c
> +++ b/src/compositor-drm.c
> @@ -3075,12 +3075,12 @@ drm_backend_create(struct weston_compositor *compositor,
>  	 * without nuclear page flip. Without nuclear/atomic, hw plane
>  	 * and cursor plane updates would either tear or cause extra
>  	 * waits for vblanks which means dropping the compositor framerate
> -	 * to a fraction.
> +	 * to a fraction. For cursors, it's not so bad, so they are
> +	 * enabled.
>  	 *
>  	 * These can be enabled again when nuclear/atomic support lands.
>  	 */
>  	b->sprites_are_broken = 1;
> -	b->cursors_are_broken = 1;
>  	b->compositor = compositor;
>  
>  	section = weston_config_get_section(config, "core", NULL, NULL);
> -- 
> 2.4.6
> 
> _______________________________________________
> wayland-devel mailing list
> wayland-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/wayland-devel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the wayland-devel mailing list