~thong-u/unoptimized/+git/libva:v1.8-branch

Last commit made on 2017-11-17
Get this branch:
git clone -b v1.8-branch https://git.launchpad.net/~thong-u/unoptimized/+git/libva

Branch merges

Branch information

Name:
v1.8-branch
Repository:
lp:~thong-u/unoptimized/+git/libva

Recent commits

8f1091e... by Philipp Kerling

wayland: Add wl_drm listener immediately upon bind

Events on wl_drm could get lost if the listener is bound only after
the roundtrip is complete. While it is correct that to get all wl_drm
events at most two roundtrips are required, in fact one roundtrip may
be enough if another thread flushes and reads from the connection
in parallel to the initial libva wl_registry roundtrip. It is thus too
late to call wl_drm_add_listener after the roundtrip.

Fixes: #101
(cherry picked from commit 9ca99eb84cdb6ea638af567f6074c53fa51a416c)

6b6221d... by Philipp Kerling

wayland: Implement registry remove handler

Wayland event handlers are never optional. libwayland-client will abort
the program if events for unbound handlers are to be dispatched.
Although the event queue is only dispatched a few times during
initialization for getting the wl_drm global and authenticating the DRM
device, in rare circumstances it can happen that another global such as
a wl_output - or even wl_drm itself - is removed during that time, which
would crash the program. Implement the handler to fix this.

Fixes: #99

Signed-off-by: Philipp Kerling <email address hidden>
(cherry picked from commit 62affbb44b771931a8895fc7428df23afb888750)

e51ff23... by Philipp Kerling

wayland: Immediately destroy wl_* objects when DRM device is authenticated

The Wayland protocol is only used to determine which device driver to
load and initialize the DRM state. After the initial roundtrips that
open and authenticate the DRM device, the Wayland protocol objects
are not used anymore and will only take up memory and possibly have
events queued that never get handled.
As fix, destroy them immediately after DRM auth is through. This commit
also adds more error checking to the initialization function.

Fixes: #100

Signed-off-by: Philipp Kerling <email address hidden>
(cherry picked from commit 324a725e5068a538e2446b0b73cccb3c119f3d8b)

438b35f... by Philipp Kerling

wayland: Do not rely on external library for wl_drm_interface

Doing the runtime lookup is error-prone (as indicated in the code
already by the two library names) and not necessary at all.
Just compile wl_drm_interface as part of libva which is the usual
way to use extra Wayland protocols. Care must be taken as to not
accidentally export the symbol though.

(cherry picked from commit c26a187cdff82dc5a360676ef05e6f6d761c2a0a)

cb7c906... by Philipp Kerling

wayland: Also support wl_drm version 1

Just using version 2 without checking would lead to a protocol error
bringing down the entire application, and wl_drm version 1 is still
supported since v2 only adds PRIME capabilities.

Signed-off-by: Philipp Kerling <email address hidden>
(cherry picked from commit 83fcb107ad01ee6acc558b736b12db6bea6f7d2f)

27370a4... by Philipp Kerling

Bump wayland-client dependency to 1.11.0

Signed-off-by: Philipp Kerling <email address hidden>
(cherry picked from commit 6ce91ae201d0320664bb1d440973e57f6acee017)

9a32061... by Philipp Kerling

wayland: Use private event queue for compositor communication

(Ab)using the default queue that the application might itself use
already and work on in parallel to initializing libva is not
thread-safe. Make it thread-safe by setting a private queue on a
wrapped wl_display. Also print some more error messages in case things
go wrong.

Signed-off-by: Philipp Kerling <email address hidden>
Signed-off-by: Olivier Crete <email address hidden>
(cherry picked from commit ce938c3bd53c6572c71cbd98a6b7de69db24276b)

dd96ade... by Philipp Kerling

wayland: Cleanup wl_registry in va_wayland_drm_destroy

Signed-off-by: Philipp Kerling <email address hidden>
Signed-off-by: Olivier Crete <email address hidden>
(cherry picked from commit e50d1074997c3acfc26cb2d3382ec659988f51f4)

2954106... by Philipp Kerling

wayland: Fix uninitialized registry

Signed-off-by: Philipp Kerling <email address hidden>
(cherry picked from commit 0d9a919c654022ab39faa4a58f54288929e128a0)

1175bb5... by Lim Siew Hoon <email address hidden>

Added a libva_version variable to libva.pc.in

Fixes #95

Signed-off-by: Lim Siew Hoon <email address hidden>
(cherry picked from commit a750c6cbbddf4b64e0547f5995d19d1697d6f26d)