xserver/hw/xwayland
Eric Anholt 7bd0f79c38 glamor: Delay making pixmaps shareable until we need to.
If a pixmap isn't getting exported as a dmabuf, then we don't need to
make an EGLImage/GBM bo for it.  This should reduce normal pixmap
allocation overhead, and also lets the driver choose non-scanout
formats which may be much higher performance.

On Raspberry Pi, where scanout isn't usable as a texture source, this
improves x11perf -copypixwin100 from about 4300/sec to 5780/sec under
xcompmgr -a, because we no longer need to upload our x11perf window to
a tiled temporary in order to render it to the screen.

v2: Just use pixmap->usage_hint instead of a new field.  Drop the
    changes that started storing gbm_bos in the pixmap priv due to
    lifetime issues.
v3: Fix a missing gbm_bo_destroy() on the pixmap-from-fd success path.

[ajax: Restore glamor_egl_create_argb8888_based_texture for ABI reasons.
I'm not aware of any driver using it directly, but.]

Signed-off-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>
(cherry picked from commit 51984dddfc)
2016-03-11 13:13:39 -05:00
..
.gitignore Xwayland DDX 2014-04-03 15:19:22 -07:00
drm.xml xwayland: Add glamor and DRI3 support 2014-06-24 15:09:55 -07:00
Makefile.am xwayland: Add dependency on glamor libs 2015-03-24 12:01:38 -07:00
xwayland-cursor.c xwayland: call through to miPointerWarpCursor on warp_cursor 2015-09-18 14:55:00 +02:00
xwayland-cvt.c Xwayland DDX 2014-04-03 15:19:22 -07:00
xwayland-glamor.c glamor: Delay making pixmaps shareable until we need to. 2016-03-11 13:13:39 -05:00
xwayland-input.c xwayland: Always update the wl_pointer cursor on pointer focus 2015-12-09 10:45:49 -05:00
xwayland-output.c xwayland: Update screen size on output removal 2015-12-09 10:45:49 -05:00
xwayland-shm.c xwayland: Do not set root clip when rootless 2015-12-09 10:45:49 -05:00
xwayland.c xwayland: check if creating xwl_output succeeded 2015-12-09 10:45:49 -05:00
xwayland.h xwayland: Destroy xwl_output when wl_output gets removed 2015-09-25 15:22:18 +02:00