[PATCH weston 00/14] New output configuration API take 4

Pekka Paalanen ppaalanen at gmail.com
Wed Oct 5 13:43:39 UTC 2016


On Fri, 30 Sep 2016 14:11:01 +0200
Armin Krezović <krezovic.armin at gmail.com> wrote:

> This is (hopefully final) take 4 of my new output configuration API.
> 
> This series addresses some minor issues found during the DRM backend
> review and contains some (rather major) refactoring of the Wayland
> backend to bring back old --fullscreen behaviour and address some
> minor issues.
> 
> For information on purpose of this series and information
> about previous changes, see:
> 
> https://lists.freedesktop.org/archives/wayland-devel/2016-August/030591.html
> https://lists.freedesktop.org/archives/wayland-devel/2016-August/030752.html
> 
> All patches are available at github, rebased against today's git master:
> 
> https://github.com/krezovic/weston/commits/output-config-api
> 
> Armin Krezović (14):
>   libweston: Add more functionality for handling weston_output objects
>   libweston: Add initial output API for windowed outputs configuration
>   compositor: Implement output configuration using windowed_output_api
>   weston: Port DRM backend to new output handling API
>   weston: Port fbdev backend to new output handling API
>   weston: Port headless backend to new output handling API
>   weston: Port RDP backend to new output handling API
>   weston: Port Wayland backend to new output handling API
>   weston: Port X11 backend to new output handling API
>   libweston: Merge weston_output_init() into weston_output_enable()
>   weston: Rename weston_output_init_pending() to weston_output_init()
>   libweston: Remove weston_backend_output_config structure
>   libweston: Drop requirement of setting mm_width/mm_height in backends
>   compositor-rdp: Properly destroy the renderer and pixman image
> 
>  Makefile.am                     |   1 +
>  compositor/main.c               | 775 ++++++++++++++++++++++++----------------
>  configure.ac                    |   6 +-
>  libweston/compositor-drm.c      | 439 +++++++++++++----------
>  libweston/compositor-drm.h      |  50 +--
>  libweston/compositor-fbdev.c    |  87 +++--
>  libweston/compositor-fbdev.h    |   4 +-
>  libweston/compositor-headless.c | 152 +++++---
>  libweston/compositor-headless.h |   8 +-
>  libweston/compositor-rdp.c      | 139 ++++---
>  libweston/compositor-rdp.h      |  26 +-
>  libweston/compositor-wayland.c  | 399 ++++++++++++++-------
>  libweston/compositor-wayland.h  |  12 +-
>  libweston/compositor-x11.c      | 312 +++++++++-------
>  libweston/compositor-x11.h      |  13 +-
>  libweston/compositor.c          | 401 +++++++++++++++++----
>  libweston/compositor.h          |  51 ++-
>  libweston/windowed-output-api.h |  92 +++++
>  18 files changed, 1930 insertions(+), 1037 deletions(-)
>  create mode 100644 libweston/windowed-output-api.h
> 

Hi,

all patches are now R-b me. Here are my test results:

DRM-backend with two outputs connected, one of them having a special
modeline configured: OK

Using the above as host with either desktop or fullscreen shell,
Wayland-backed:
- desktop-shell: OK
- desktop-shell/--output-count=2: OK
- desktop-shell/--fullscreen: OK
- desktop-shell/--sprawl: OK
- fullscreen-shell: FAIL (1)

Headless-backend:
- the test suite: OK

X11-backend:
- no args: OK
- --output-count=2: OK
- --output-count=3 --width=500 --use-pixman: OK
- --scale=2: OK

I didn't test RDP and fbdev (the latter I just forgot).


Regressions compared to running Weston 1.11 as nested:

(1) Reports "Failed in eglSwapBuffers." with EGL error code
EGL_BAD_ALLOC. One of the two outputs remains black. For reference,
Weston 1.11 and weston-fullscreen work fine displaying on both outputs.


That being the only regression I could find and being quite happy with
the development, even though there would be more to polish, the whole
series is pushed now:
   aca3ffb..a483cac  master -> master



I also noticed some existing issues already in Weston 1.11: output
order being different in parent vs. nested in --sprawl, wayland/pixman
with --output-count=2 not drawing one of two outputs, X11-backend
--fullscreen creating a fullscreen window but using only part of it.



Thanks,
pq
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 811 bytes
Desc: OpenPGP digital signature
URL: <https://lists.freedesktop.org/archives/wayland-devel/attachments/20161005/3638480b/attachment.sig>


More information about the wayland-devel mailing list