New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 865708 link

Starred by 1 user

Issue metadata

Status: Untriaged
Owner: ----
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Implement zwp_linux_explicit_synchronization_v1 experimental interface in exo

Project Member Reported by dcasta...@chromium.org, Jul 19

Issue description

An experimental interface to support explicit synchronization between wayland clients and servers has been drafted:  https://gitlab.collabora.com/daniels/wayland-protocols/tree/wip/explicit-sync/unstable/linux-explicit-synchronization

We've added support to pass in-fences to kms and we're working on adding support for out-fences (crbug.com/653908)

Eventually we'd like to be able to use in/out-fences all the way from wayland clients to cc/kms.

This issue is to keep track of implementing zwp_linux_explicit_synchronization_v1 and add support for in/out-fences to exo.

A way to start working on this before we get full stack support of explicit fences could be:

- Implement a small wayland client (https://cs.chromium.org/chromium/src/components/exo/wayland/clients/) that uses the synchronization protocol.
- Implement the protocol in exo.
- Use sync_wait on the exo side to test integration.
 
Cc: alexandr...@collabora.com
Project Member

Comment 2 by bugdroid1@chromium.org, Jan 15

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/e05fa0aa2362130481fc414fae6e576fb16ecb1c

commit e05fa0aa2362130481fc414fae6e576fb16ecb1c
Author: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Date: Tue Jan 15 05:17:12 2019

third_party/wayland-protocols: Update to release 1.17+

The 1.17 release, and the subsequent minor updates, contain the
upstreamed linux-explicit-synchronization-unstable-v1 protocol.


Bug: 865708
Change-Id: Idbd25879d2829fe5967515ac218e7aee686b0a9a
Reviewed-on: https://chromium-review.googlesource.com/c/1221586
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Cr-Commit-Position: refs/heads/master@{#622739}
[modify] https://crrev.com/e05fa0aa2362130481fc414fae6e576fb16ecb1c/DEPS
[modify] https://crrev.com/e05fa0aa2362130481fc414fae6e576fb16ecb1c/third_party/wayland-protocols/BUILD.gn
[modify] https://crrev.com/e05fa0aa2362130481fc414fae6e576fb16ecb1c/third_party/wayland-protocols/README.chromium

Project Member

Comment 3 by bugdroid1@chromium.org, Jan 16

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc

commit 690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc
Author: Alexandros Frantzis <alexandros.frantzis@collabora.com>
Date: Wed Jan 16 04:05:24 2019

exo/wayland: Implement linux_explicit_synchronization_v1 interface

Implement the linux_explicit_synchronization_v1 interface and the
skeleton of the linux_surface_synchronization_v1 interface (both
part of the linux_explicit_synchronization_unstable_v1 protocol).
The core protocol functionality, which resides in
linux_surface_synchronization_v1, will be implemented in upcoming
commits.

This commit also introduces the wayland-explicit-synchronization-client
test client which will be enhanced to use protocol functionality in step
with support in the server.

Bug: 865708
Change-Id: I2792376cd49045afc3f8aaf248522310cd3463e9
Reviewed-on: https://chromium-review.googlesource.com/c/1221314
Reviewed-by: Daniele Castagna <dcastagna@chromium.org>
Commit-Queue: Daniele Castagna <dcastagna@chromium.org>
Cr-Commit-Position: refs/heads/master@{#623090}
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/BUILD.gn
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/clients/client_base.cc
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/clients/client_base.h
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/clients/client_helper.cc
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/clients/client_helper.h
[add] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/clients/explicit_synchronization.cc
[modify] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/server.cc
[add] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/zwp_linux_explicit_synchronization.cc
[add] https://crrev.com/690f31fac3ae7e73e210b3a0a3c3b03a8ac226bc/components/exo/wayland/zwp_linux_explicit_synchronization.h

Sign in to add a comment